زمان کنونی: ۲۵ اردیبهشت ۱۴۰۳, ۰۶:۴۸ ق.ظ مهمان گرامی به انجمن مانشت خوش آمدید. برای استفاده از تمامی امکانات انجمن می‌توانید عضو شوید.
گزینه‌های شما (ورودثبت نام)

تعداد فرآیندها و نخ های ایجاد شده چندتاست؟

ارسال:
  

LEA3C پرسیده:

تعداد فرآیندها و نخ های ایجاد شده چندتاست؟

امیدوارم کسی این رو بلد باشه و جواب بده. خیلی رو مخم رفته اصلا نمی تونم درکش کنم


فایل‌(های) پیوست شده

نقل قول این ارسال در یک پاسخ

۰
ارسال:
  

LEA3C پاسخ داده:

RE: تعداد فرآیندها و نخ های ایجاد شده چندتاست؟

واقعا کسی اینو بلد نیست؟
نقل قول این ارسال در یک پاسخ

ارسال:
  

yayarety پاسخ داده:

RE: تعداد فرآیندها و نخ های ایجاد شده چندتاست؟

(۲۹ آذر ۱۳۹۴ ۰۱:۱۲ ق.ظ)LEA3C نوشته شده توسط:  واقعا کسی اینو بلد نیست؟

سلام دوست عزیز،

حتما خودتون می دونین که نوشتن if بخاطر اینه که برنامه بفهمه آیا پدر هست یا فرزند، چون در ابتدا کد پدر و فرزند یکسان هست تا جایی که دستور exec اجرا بشه (که در کد صورت سوال به اینجا هنوز نرسیده، پس کدهای پدر و فرزندها روی هم منطبق اند).
فرزند، id خودش رو صفر می بینه، البته واقعا id اش صفر نیست، پدرش می تونه مقدار واقعی id فرزندش رو ببینه.
این صفر دیدن id توسط فرزند یعنی سیستم عامل بهش می فهمونه که بچه ای، ریز می بینمت :-)
اینجا شش فرایند، البته با شمردن خود فرایند پدر و نیز دو تا نخ تولید میشه
که توی شکل ضمیمه براتون روند انجام کار رو نوشتم

ضمنا راه حل به اصطلاح تستی و سریعش هم اینه:
به تعداد دو برابر fork ها ، فرایند داریم (با احتساب فرایند پدر اولیه) چون هر fork موجب دو تا شدن میشه

همینطور چون create_thread فقط تحت تاثیر یه fork (که داخل if) هست قرار می گیره،
پس تعداد نخهای تولیدی هم دو تا هست.


فایل‌(های) پیوست شده

یافتن تمامی ارسال‌های این کاربر
نقل قول این ارسال در یک پاسخ

۰
ارسال:
  

LEA3C پاسخ داده:

RE: تعداد فرآیندها و نخ های ایجاد شده چندتاست؟

واقعا ممنونم راهنمایی خیلی خوبی بود

مشکل اصلیم این بود که فرزندها رو از اول کد براشون اجرا می کردم در حالی باید از خط بعد از fork که ایجاد میشه اون فرزند ادامه بده

در پیوست یه نمونه دیگه رو آوردم


فایل‌(های) پیوست شده

نقل قول این ارسال در یک پاسخ

ارسال:
  

yayarety پاسخ داده:

RE: تعداد فرآیندها و نخ های ایجاد شده چندتاست؟

(۲۹ آذر ۱۳۹۴ ۰۸:۰۴ ب.ظ)LEA3C نوشته شده توسط:  واقعا ممنونم راهنمایی خیلی خوبی بود

مشکل اصلیم این بود که فرزندها رو از اول کد براشون اجرا می کردم در حالی باید از خط بعد از fork که ایجاد میشه اون فرزند ادامه بده

در پیوست یه نمونه دیگه رو آوردم
بسیار خوب، خوشحالم که تونستم کمکی داشته باشم
مثال شما هم خیلی عالی بود
یافتن تمامی ارسال‌های این کاربر
نقل قول این ارسال در یک پاسخ



موضوع‌های مرتبط با این موضوع...
موضوع: نویسنده پاسخ: بازدید: آخرین ارسال
  تعداد برگ درخت؟؟؟؟؟؟؟ rad.bahar ۴ ۴,۰۱۳ ۱۵ آذر ۱۴۰۲ ۱۱:۵۳ ق.ظ
آخرین ارسال: mohamadrra
  جزوه اسکن شده " سیستم های توزیع شده " دکتر پدرام arash691 ۸ ۱۴,۲۹۰ ۱۰ آذر ۱۴۰۱ ۰۲:۵۵ ق.ظ
آخرین ارسال: negarrah
  فیلم قفل شده Mohammad_TeZaR ۰ ۰ ۰۵ شهریور ۱۴۰۱ ۰۸:۳۷ ب.ظ
آخرین ارسال: Mohammad_TeZaR
  تا به حال شده خدا فرصت زندگی کردن دوباره رو بهت بده؟مرگ از جلوی چشمات رد شده؟ abraham ۲۱ ۱۴,۹۹۱ ۲۰ دى ۱۳۹۹ ۱۰:۵۶ ب.ظ
آخرین ارسال: raam
  مرتبه ایجاد درخت rad.bahar ۱ ۳,۱۱۲ ۳۰ مهر ۱۳۹۹ ۰۳:۳۴ ب.ظ
آخرین ارسال: rad.bahar
  تعداد جواب mostafaheydar1370 ۲۱ ۱۷,۵۱۸ ۰۱ مهر ۱۳۹۹ ۱۱:۴۱ ب.ظ
آخرین ارسال: miinaa
  چگونه گوشی داغ شده را خنک کنیم؟ niloofarmajdi ۰ ۲,۴۸۸ ۰۱ تیر ۱۳۹۹ ۱۰:۲۶ ق.ظ
آخرین ارسال: niloofarmajdi
  تعداد روش های نوشتن عدد n ss311 ۲ ۳,۰۶۳ ۱۳ بهمن ۱۳۹۸ ۰۵:۲۷ ب.ظ
آخرین ارسال: ss311
  تعداد مسیرها در گراف ss311 ۰ ۱,۸۴۸ ۰۸ بهمن ۱۳۹۸ ۱۲:۴۷ ب.ظ
آخرین ارسال: ss311
  تعداد درخت فراگیر ss311 ۰ ۲,۱۲۶ ۰۶ بهمن ۱۳۹۸ ۰۵:۰۶ ب.ظ
آخرین ارسال: ss311

پرش به انجمن:

Can I see some ID?

به خاطر سپاری رمز Cancel

Feeling left out?


نگران نباش، فقط روی این لینک برای ثبت نام کلیک کن. رمزت رو فراموش کردی؟ اینجا به یادت میاریم! close

رمزت رو فراموش کردی؟

Feeling left out?


نگران نباش، فقط روی این لینک برای ثبت نام کلیک کن. close