PDA

View Full Version : سوال: دسترسی به یک object از طریق دو thread مجزا



Royce_Da
جمعه 11 تیر 1389, 23:33 عصر
سلام

میخواستم بدونم چطوری میشه از داخل یک thread به یک object ی که خارج از thread ساخته شده دسترسی داشت .

مثلآ:

یه textbox رو رو در نظر بگیرید که روی form قرار داره و میخواهیم از طریق یه thread مقدار اون رو 1 و از طریق یه thread دیگه مقدار اون رو 0 کنم و این عمل مدام تکرار بشه .


ممنون میشم از راهنماییتون

FastCode
شنبه 12 تیر 1389, 00:12 صبح
Control.Invoke
راجع بهش توی این سایت مطلب خیلی زیاده.

Royce_Da
شنبه 12 تیر 1389, 21:58 عصر
Control.Invoke
راجع بهش توی این سایت مطلب خیلی زیاده.

ببخشید میشه بیشتر توضیح بدبد من که تو این سایت چیز خاصی پیدا نکردم . تو سایت های خارجی هم که خوندم چیزی سر در نیاووردم.

mehrsa_fr
یک شنبه 13 تیر 1389, 08:37 صبح
احتمالا این مثال کمکت میکنه

mandagarana
سه شنبه 04 تیر 1398, 09:29 صبح
احتمالا این مثال کمکت میکنه

سلام
میشه یکم توضیحش بدید

rezayeman
سه شنبه 04 تیر 1398, 10:04 صبح
سلام

میخواستم بدونم چطوری میشه از داخل یک thread به یک object ی که خارج از thread ساخته شده دسترسی داشت .

مثلآ:

یه textbox رو رو در نظر بگیرید که روی form قرار داره و میخواهیم از طریق یه thread مقدار اون رو 1 و از طریق یه thread دیگه مقدار اون رو 0 کنم و این عمل مدام تکرار بشه .


ممنون میشم از راهنماییتون


private void ShowMessage(Control Ctrl, string Mess) {
try
{
if (InvokeRequired)
{
MethodInvoker method = new MethodInvoker(delegate { ShowMessage(Ctrl, Mess); });
Invoke(method);
return;
}
else
Ctrl.Text = Mess;
}
catch { }
}


من از این کد استفاده میکنم

mandagarana
چهارشنبه 05 تیر 1398, 10:25 صبح
private void ShowMessage(Control Ctrl, string Mess) {
try
{
if (InvokeRequired)
{
MethodInvoker method = new MethodInvoker(delegate { ShowMessage(Ctrl, Mess); });
Invoke(method);
return;
}
else
Ctrl.Text = Mess;
}
catch { }
}


من از این کد استفاده میکنم


سلام
توضیحشم بدید آخه :ناراحت::ناراحت::ناراحت::نار حت::ناراحت::ناراحت::ناراحت:: اراحت::ناراحت:

rezayeman
شنبه 15 تیر 1398, 11:02 صبح
توضیح خاصی لازم نداره
شما اسم کنترلی که میخواین text مربوط بهش تغییر بدین برای این متد ارسال کنید بقیه موضوع خودکار انجام میشه.

بابت Invoke و delegate یه جستجوی کوچک تو اینترنت جواب سوالاتتو میده

این روشی که براتون گذاشتم برای تمامی مواردی که توی thread بخواد استفاده بشه کاربرد داره.

barnamenevisjavan
شنبه 15 تیر 1398, 11:16 صبح
سلام
توضیحشم بدید آخه :ناراحت::ناراحت::ناراحت::نار حت::ناراحت::ناراحت::ناراحت:: اراحت::ناراحت:
از کد Dispatcher.Invoke استفاده کن متدش رو بساز داخل متد کدت رو بنویس

gereha9474@mxgsby.com
یک شنبه 18 مهر 1400, 16:20 عصر
Control.Invoke
راجع بهش توی این سایت مطلب خیلی زیاده.

آخه دانشمند
واسه چی الکی مینویسی که تعداد پستهای بی محتوات زیاد بشه.