PDA

View Full Version : یه مساله در رابطه با پروسه های پدر و فرزند Linux



Smc
چهارشنبه 16 خرداد 1386, 13:53 عصر
سلام ..
من دارم یه برنامه با زبان c تحت لینوکس مینویسم که یه آرایه رو بگیره و چهار تا پروسه فرزند اون آرایه رو به چهار قسمت تبدیل کنند و هر کدوماز پروسه ها حاصل جمع اون قسمت از آرایه رو که دارن به دست میارن و به پروسه پدر تحویل میدن و پروسه پدر حاصل رو چاپ میکنه ....
من اون قسمتی که میخوام هر پروسه نتیجه را یه جایی ذخیره کنه مشکل دارم ...
کسی ایده خاصی داره؟...راههای زیادی امتحان کردم ولی نتونستم...
لطفا راهنمایی کنید

TanX

Smc
چهارشنبه 16 خرداد 1386, 14:16 عصر
کسی چیزی به نظرش نمیاد؟

emad_67
چهارشنبه 16 خرداد 1386, 17:32 عصر
منظورت از پروسه پدر و فرزند چیه؟ و اینکه میگی میخوای پروسه ها یه جایی ذخیره کنی منظورت اینه که تو یه فایل ذخیره کنی؟

aidinwashere
چهارشنبه 16 خرداد 1386, 19:52 عصر
تو ویندوز, پروسس ها یک event دارن به اسمه IsComplete که وقتی پروسس کارش تموم میشه اونو صدا میزنه, شاید این ایده تو لینوکس بدرد خورد.

sh_roohani
چهارشنبه 16 خرداد 1386, 20:03 عصر
سلام،
ببین می تونی یه پایپ بین پدر و فرزند ایجاد کنی و با استفاده از SIGUSER1 یا SIGUSER2 فرزند به پدر بگه محاسبه ش تموم شده و پدر باید حالا بره نتیجه رو از پایپ بخونه؟

Mamdos
پنج شنبه 17 خرداد 1386, 00:20 صبح
چون پردازه‌های فرزند کافیه فقط یک عدد برگردونند اینجا می‌تونن حاصل‌جمع رو به عنوان خروجی پردازه (وضعیت خروج exit status) برگردونند. هر چند کار تمیزی نیست چون فقط وقتی به درد می‌خوره که فرزندان بخوان فقط یه عدد برگردونند، و اصلاً وضعیت خروج برای این کار ساخته نشده. در حالت کلی‌شو من بلد نیستم. احتمالاً با یه جستجوی ساده درباره‌ی ()fork در وب پیدا بشه.

به هرحال برای همین شرایط اینجا (http://www.ecst.csuchico.edu/~beej/guide/ipc/fork1.c) یه مثال داره که کمک می‌کنه.

Smc
پنج شنبه 17 خرداد 1386, 01:43 صبح
آقا خیلی ممنون ....بالا خره درست شد
.آدم هر سوالی که داشته باشه تو این سایت حتما جوابسو پیدا میکنه اونم به خاطر بچه های باحالشه ......
امیدوارم فرصت جبران برای کمک به این بچه ها هم روزی نصیب منم بشه....

TanX