PDA

View Full Version : سوال: اطلاع از پر شدن داده در Shared Memory



water_lily_2012
سه شنبه 23 مهر 1392, 11:36 صبح
سلام
آیا Event وجود دارد که از پر شدن و قرار گرفتن داده در Shared Memory اگاه شویم.
می خواهم این وضعیت را بدون استفاده از تایمر بررسی کنم.


تشکر

FastCode
سه شنبه 23 مهر 1392, 12:07 عصر
اگر اشتباه نکنم یک بار دیگه هم به شما گفتم که باید از NamedEvents استفاده کنید.
http://msdn.microsoft.com/en-us/library/windows/desktop/ms682396%28v=vs.85%29.aspx

water_lily_2012
سه شنبه 23 مهر 1392, 15:09 عصر
این در C++ صحبت کرده و من از MemoryMappedFile دارم استفاده می کنم.
میشه یه راهنمایی بفرمایید که چگونه عمل کنم.

تشکر

FastCode
سه شنبه 23 مهر 1392, 18:40 عصر
http://stackoverflow.com/questions/7594338/how-to-create-named-autoresetevent-in-c
http://blogs.msdn.com/b/mattdotson/archive/2006/03/03/543143.aspx

water_lily_2012
سه شنبه 23 مهر 1392, 22:59 عصر
سلام
لینک دوم خوب بود.فقط اگر لطف کنید یه توضیحی روی تابع Mainش بدید.

تشکر

FastCode
چهارشنبه 24 مهر 1392, 01:53 صبح
سه تا پروسس درست میکنه که به ترتیب عکس منتظر هم میشن.
خودش کامل توضیخ داده.

water_lily_2012
چهارشنبه 24 مهر 1392, 16:36 عصر
سلام
Set و WaitOne چه کاری انجام میده؟

FastCode
چهارشنبه 24 مهر 1392, 18:40 عصر
تردی که WaitOne رو صدا میزنه منتظر میشه تا یک ترد دیگه Set رو صدا بزنه تا قفل باز بشه.
اگر wait از نوع automatic نباشه و بعد از Set شدن دوباره Reset نشه ترد های بعدی که WaitOne رو صدا میزنند منتظر نمیمونند.

توی مورد شما ترد ها از پروسس های مختلف هستند.

water_lily_2012
چهارشنبه 24 مهر 1392, 19:22 عصر
سلام
دیدم و بیشتر متوجه شدم فقط باز هم سوال دارم.
اگر بخواهم چندین بار استفاده کنم چه کار کنم. یکبار که Set بشه دیگه برنامه دوم هر بار عمل میکنه.
بعد Close برای چیه؟

تشکر