Warning: Undefined array key 0 in /var/www/tgoop/function.php on line 65

Warning: Trying to access array offset on value of type null in /var/www/tgoop/function.php on line 65
886 - Telegram Web
Telegram Web
This media is not supported in your browser
VIEW IN TELEGRAM
⁦ಠ⁠_⁠ʖ⁠ಠ⁩

 
🥷🏻 CHANNEL | GROUP
3💔3🤣1
وقتی اولین خط کدتون رو نوشتید چه حسی داشتید؟ 🤔
من که داشتم بوگاتیمو تصور میکردم 😂

 
🥷🏻 CHANNEL | GROUP
🤣214
دوساعت پست نوشتم دستم خورد کلش پاک شد
🤣14💔5
شرمنده برای فعالیت کم بسیار درگیر هستم 😔
14
Forwarded from 👾 Geek Engineers ([ Taha. Dostifam ])
این هم از زبان برنامه نویسی Cyrus که ما موفق به ساختش شدیم.

قدیمیای کانال از روند توسعه ش خبر دارن :)
منتها حقیقتا راه دور و درازی در پیش داریم که توسعه کامپایلر مصیبت های خودشو داره. منتها با کمک و همراهی شما دوستان پیشرفت خیلی زیادی داشتیم و امیدواریم که از پس جبران حمایت های شما بر بیایم.

در حال حاضر داریم type system رو تست میکنیم تا اینکه تا حدی stable بشه. هر موقع استیبل بشه به ادامه دولوپ فیچر های high level مثل error handling و macro ها و generic type ها خواهیم پرداخت انشالله.

#cyrus
@cyrus_lang
https://github.com/cyrus-lang/Cyrus
👏195🔥1
این GIL پایتون چقدر دردسر سازه 😬
👍6
Ninja Learn | نینجا لرن
این GIL پایتون چقدر دردسر سازه 😬
یه پست بعدا راجبش میسازم که چرا دردسر سازه و چجوری میشه دورش زد :)
8
https://github.com/lolgg313/HPE

یه پروژه جالب پیدا کردم
با پایتون game engine ساختن :)
جالبه کارم میکنه و باحاله
5🔥3👍1
Ninja Learn | نینجا لرن
یه پست بعدا راجبش میسازم که چرا دردسر سازه و چجوری میشه دورش زد :)
خب همونجور که میدونید درمورد GIL یا همون Global Interpreter Lock بحث زیاده 🤯

مشکل ما با GIL چیه؟
اینه که نمیذاره مولتی‌تردینگ واقعی داشته باشیم.
یعنی چی؟
یعنی نمی‌تونیم چندتا تسک رو همزمان روی چندتا ترد اجرا کنیم.
چرا؟
چون GIL میگه:
«در هر لحظه فقط یه ترد حق داره اجرا بشه، بقیه باید وایسن نوبتشون بشه.»

حالا نکته بامزه اینجاست:
اگه بیای چندتا ترد ران کنی، این تردا میان سر GIL دعوا می‌کنن کلی context switching می‌خوره latency میره بالا یه عالمه overhead میاد رو برنامه.
نتیجه؟ مولتی‌تردینگ برای کارای CPU-bound نه تنها کمک نمی‌کنه، بدترم می‌کنه برای همین باید single-thread باشه 😅
(احتمالاً خودتونم وقتی async برای CPU-bound نوشتید دیدید چه وضعیه.)

حالا چرا اصلاً GIL وجود داره؟
سؤال خوبیه 👌
خیلی خلاصه بگم نذاشته پایتون به چوخ بره 😂
چطوری؟
میاد thread safety رو برات تضمین می‌کنه، نمیذاره race condition بیاد وسط و همه چی بترکه.

ولی خب GIL دردسرم کم درست نمیکنه:

نمیذاره مولتی‌تردینگ CPU-bound داشته باشیم.

بعدم بخوای حذفش کنی هزاران لایبری که با درنظر گرفتن gil نوشته شده باید اپدیت بشن :)

و....
کلاً محدودمون می‌کنه.

راه‌حل چیه؟

1. C Extension
یعنی توابع سنگینت رو تو C بنویسی، اونجا اجرا بشه، فقط از پایتون صدا بزنی. اینجوری GIL رو می‌تونی دور بزنی.

2. Multiprocessing
این یکی مطرح ترین راهه. به تعداد core های CPU پروسس بالا میاری. هر پروسس مفسر خودش و در نتیجه GIL خودش رو داره اینجا واقعاً موازی میشه.
ولی اینجا یه توهمه که «ایول مشکل حل شد»…
سخت در اشتباهید 😅
چرا؟
چون:
ـprocess خیلی سنگینه، هر کدوم کلی overhead دارن.

ارتباط بین processها (همون IPC) خودش یه هزینه‌ی جداست.
داده‌ها باید بین processها جابه‌جا بشن (queue، pipe، shared memory و …) که اینم کندی و مصرف حافظه میاره.

گزینه اپشنال شدن گیل هم توی ۳.۱۳ کامل گیل رو حذف نمیکنه میتونیم مولتی پراسسینگ و موازی سازی کنیم ولی خب خودشون هنوز تایید نکرده و ازمایشیه و کلی مشکلات داره.

گزینه هاییم هست مثل استفاده از nogil که خب یکسری مشکلات دارن که توی این پست جا نمیشن بگم

📌 خلاصه: GIL هم ناجیه، هم قاتل. ناجی چون امنیت میده، قاتل چون مولتی‌تردینگ CPU-bound رو ازمون میگیره. ولی خب این مورد توی I/O bound process نیست چون وقتی یه پراسس io ران میشه گیل خاموش میشه و میتونی parallel processing داشته باشی :)

#️⃣ #web #programming

 
🥷🏻 CHANNEL | GROUP
❤‍🔥122👍2
هرخارجی که ویوش کم میشه یه ویدیو درمورد ایران میسازه یا فارسی حرف میزنه ویوهاش میلیونی میشه 😂😂

ماهم بیایم یه مدت محتوای انگلیسی بزاریم یهو فارسی صحبت کنیم 🗿
Yea man this a business
🤣20
This media is not supported in your browser
VIEW IN TELEGRAM
فقط اونجایی که گفت برادر c رو زبان سطح بالا صدا زد 😂
🤣17🔥4
Ninja Learn | نینجا لرن
فقط اونجایی که گفت برادر c رو زبان سطح بالا صدا زد 😂
میتونم به جرعت بگم یکی از اشخاصیه که ۲۰۰ سال دیگه هم هوش مصنوعی نمیتونه جاشو بگیره🗿
10
Forwarded from LearnPOV
با اعضای تیم لرن‌ پی‌ او وی آشنا شید 🥇

توی صفحه تیم ما میتونید اعضای تیم LearnPOV آشنا بشید 😉


🔗 مشاهده تیم ما

🏫 @LearnPOV | اولین شبکه اجتماعی آموزشی
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥4
LearnPOV
با اعضای تیم لرن‌ پی‌ او وی آشنا شید 🥇 توی صفحه تیم ما میتونید اعضای تیم LearnPOV آشنا بشید 😉 🔗 مشاهده تیم ما 🏫 @LearnPOV | اولین شبکه اجتماعی آموزشی
محمد حسین خیلی خوشحالم که بعد کلی زحمتی که کشیدی تونستی پلتفرم خفنتو بیاری بالا :)❤️
ارزوی بهترینا رو برات داریم 😉
🔥81👌1
خدا بخیر کنه 🫡
🫡9🤣3
2025/10/16 20:49:26
Back to Top
HTML Embed Code: