چطور یک Thread Pool بسازیم!

[این مقاله در سطح «متوسط» و نیازمند آشنایی خواننده با مفهوم «پردازش موازی» و زبان برنامه‌سازی «++C» است.] در پیاده‌سازی سرویس‌دهنده‌ها موارد بسیاری وجود دارد که در آن نیازمند پردازش درخواست‌های کوچک اما متعدد هستیم. برای درک بهتر مسأله یک شعبه‌ی بانک یا یک باجه‌ی فروش بلیت را در نظر بگیرید. در مثال شعبه‌ی بانک، تعداد مراجعان در طول یک روز غالباً…

Continue Reading

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

padlock from bloodykissatnight.deviantart.com

[مطالبی که در ادامه می‌آید در سطح پیشرفته و نیازمند آشنایی خواننده با مفهوم «چندریسگی» و زبان برنامه‌سازی «سی پلاس پلاس» است.] امروزه، کمتر کسی هست که در برنامه‌نویسی، اصطلاحات «پردازش چندریسه۱» یا «پردازش موازی۲» به گوشش نخورده باشد. پس از بازار داغ رقابت تولیدکننده‌های پردازنده برای افزایش سرعت پردازش تولیداتشان، در یک دهه‌ی اخیر این رقابت به تولید پردازنده‌هایی…

Continue Reading