PDA

View Full Version : سوال در مورد ارتباط Thread و فرم



Delphi-Man
چهارشنبه 28 اسفند 1387, 19:45 عصر
با سلام
من هر موقع که از thread در فرم یه شیء ایجاد می کنم بیخودی ایراد میگیره. چطور میشه از thread یه شیء ایجاد کرد در فرم و property هاش رو تغییر داد؟ آیا نمیشه Function فراخوانی کرد؟ :گریه:

vcldeveloper
چهارشنبه 28 اسفند 1387, 23:24 عصر
فقط Thread اصلی باید عناصر گرافیکی رابط کاربر را تغییر بده. درباره اش قبلا توضیح داده شده، جستجو کنید.

Delphi-Man
پنج شنبه 29 اسفند 1387, 06:18 صبح
فقط Thread اصلی باید عناصر گرافیکی رابط کاربر را تغییر بده. درباره اش قبلا توضیح داده شده، جستجو کنید.
با سلام
ممنون آقای کشاورز . اگه ممکنه خودتون بفرمایید جطوری یک تابع (نه procedure) در Thread اصلی رو توسط thread فرعی فراخوانی کنم؟ اصلا این امکان وحود داره؟

vcldeveloper
پنج شنبه 29 اسفند 1387, 13:27 عصر
جطوری یک تابع (نه procedure) در Thread اصلی رو توسط thread فرعی فراخوانی کنم؟ اصلا این امکان وحود داره؟
یعنی چی؟! بطور کلی یک کد برای اجرا شدن نیاز به یک Thread داره، و میتونه در هر Thread اجرا بشه. حالا معنی اینکه یک تابع در Thread اصلی باشه، و توسط Thread فرعی فراخوانی بشه رو من متوجه نمیشم.

Delphi-Man
جمعه 30 اسفند 1387, 09:06 صبح
یعنی چی؟! بطور کلی یک کد برای اجرا شدن نیاز به یک Thread داره، و میتونه در هر Thread اجرا بشه. حالا معنی اینکه یک تابع در Thread اصلی باشه، و توسط Thread فرعی فراخوانی بشه رو من متوجه نمیشم.
منظورم اینه که مثل sychrinize که درخواست اجرا شدن procedure رو میده، یه کاری انجام بدیم که یه function اجرا بشه.

vcldeveloper
جمعه 30 اسفند 1387, 09:32 صبح
منظورم اینه که مثل sychrinize که درخواست اجرا شدن procedure رو میده، یه کاری انجام بدیم که یه function اجرا بشه.

این میشه اجرای کد در یک Thread دیگه، نه اینکه کد مربوط به یک Thread در Thread دیگه اجرا بشه.

در هر حال، با Synchronize می تونید در همون حد کار بکنید. برای کارهای دیگه، می تونید از انواع روش های Thread Synchronization یا ارسال پیام استفاده کنید. درباره اش قبلا توضیح داده شده.