This media is not supported in your browser
VIEW IN TELEGRAM
سه تا از بهترین گیم هایی که بازی کردم، سهگانه دارک سولز
🔥2
داشتم دنبال ریسورس در مورد Multi-Threading توی C میگشتم، بهترین جایی که پیدا کردم سایت Gnu بود. لینکش رو میذارم شاید واسه شما هم جالب باشه و به کارتون بیاد:
https://www.gnu.org/software/libc/manual/html_node/ISO-C-Threads.html
https://www.gnu.org/software/libc/manual/html_node/ISO-C-Threads.html
www.gnu.org
ISO C Threads (The GNU C Library)
Next: POSIX Threads, Up: Threads [Contents][Index]
🔥3❤2👍2
Sam.sh
cloud-coffee.jpg
این چهار پس زمینه رو از این ریپو برداشتم:
https://github.com/orangci/walls-catppuccin-mocha
تصاویرش تم Catppuccin رو داره، اگه از این چهارتا خوشتون اومد، قطعا از تصاویر این ریپو لذت خواهید برد.
https://github.com/orangci/walls-catppuccin-mocha
تصاویرش تم Catppuccin رو داره، اگه از این چهارتا خوشتون اومد، قطعا از تصاویر این ریپو لذت خواهید برد.
👍2
بالاخره بعد از مدت ها فهمیدم مشکل لپتاپم چیه که بعد از Sleep کلا Freeze میشد!
مشکل هارد درایوم بود که بعد از sleep دیگه قابل کنترل نبود. این مشکل فقط با اضافه کردن یه پارامتر به kernel حل شد.
پارامتری که به kernel اضافه کردم: ( این برای HP laptops with AMD CPU هست )
پارامتر اصلی برای سیستم های دیگه:
نحوه اضافه کردن:
1- ادیت فایل زیر
اضافه کردن اون پارامتر به متغیر زیر
بعدش هم ریلود کانفیگ grub با دستور پایین
لینک داکیومنت آرچ:
https://wiki.archlinux.org/noscript/Solid_state_drive/NVMe#Controller_failure_due_to_broken_suspend_support
مشکل هارد درایوم بود که بعد از sleep دیگه قابل کنترل نبود. این مشکل فقط با اضافه کردن یه پارامتر به kernel حل شد.
پارامتری که به kernel اضافه کردم: ( این برای HP laptops with AMD CPU هست )
amd_iommu=off
پارامتر اصلی برای سیستم های دیگه:
iommu=soft
نحوه اضافه کردن:
1- ادیت فایل زیر
/etc/default/grub
اضافه کردن اون پارامتر به متغیر زیر
GRUB_CMDLINE_LINUX_DEFAULT
بعدش هم ریلود کانفیگ grub با دستور پایین
sudo grub-mkconfig -o /boot/grub/grub.cfg
لینک داکیومنت آرچ:
https://wiki.archlinux.org/noscript/Solid_state_drive/NVMe#Controller_failure_due_to_broken_suspend_support
❤3👏3🔥2👍1
📌 همیشه یه سوالی تو ذهنم بوده و اون این بوده که OOP واقعاً چیه؟ (نه اون چیزی که تو کتابا میگن) خیلیها فکر میکنن OOP یعنی کلاس و ارثبری و پلیمورفیسم... ولی اصلش چیز دیگهست.
و OOP واقعی (اوریجینال) از زبونی به اسم Smalltalk اومده اونم تو دهه ۷۰ میلادی. اون موقع تعریف OOP این بود:
«همه چیز یک شیء است و اشیاء با ارسال پیام با هم ارتباط برقرار میکنند.»
منظورم از OOP واقعی همون Objectivism هست.
ویژگیهای OOP واقعی (به سبک Smalltalk):
- همه چیز شیء است
عدد، رشته، تابع، حتی کلاسها خودشون شیء هستن.
- هیچ تابع مستقلی وجود نداره
- همهچیز از طریق ارسال پیام به اشیاء انجام میشه.
مثلا بهجای x + 5 نوشته میشه: x add: 5
- رفتار در کنار داده قرار داره
اشیاء خودشون تعیین میکنن چطور به پیامها پاسخ بدن.
- کپسولهسازی واقعی
شما نمیتونید مستقیماً به دادههای درونی اشیاء دسترسی داشته باشید. فقط از طریق پیام تعامل میکنید.
یعنی چی؟
یعنی تو OOP واقعی، تمرکز روی ساختار نیست، بلکه روی "رفتار" و "تعامل" بین اشیاءه. کد مثل جامعهای از اشیاءه که با هم در ارتباط هستن.
🧩 ارسال و دریافت پیام یعنی چی؟
یعنی به جای اینکه مستقیم یه تابع رو صدا بزنی، یه "درخواست" (پیام) به یه شیء میفرستی، و اون خودش تصمیم میگیره چطور جواب بده.
در C کلاس نداریم، ولی میتونیم با struct و function pointer یه سبک OOP شبیهسازی کنیم:
و OOP واقعی (اوریجینال) از زبونی به اسم Smalltalk اومده اونم تو دهه ۷۰ میلادی. اون موقع تعریف OOP این بود:
«همه چیز یک شیء است و اشیاء با ارسال پیام با هم ارتباط برقرار میکنند.»
منظورم از OOP واقعی همون Objectivism هست.
ویژگیهای OOP واقعی (به سبک Smalltalk):
- همه چیز شیء است
عدد، رشته، تابع، حتی کلاسها خودشون شیء هستن.
- هیچ تابع مستقلی وجود نداره
- همهچیز از طریق ارسال پیام به اشیاء انجام میشه.
مثلا بهجای x + 5 نوشته میشه: x add: 5
- رفتار در کنار داده قرار داره
اشیاء خودشون تعیین میکنن چطور به پیامها پاسخ بدن.
- کپسولهسازی واقعی
شما نمیتونید مستقیماً به دادههای درونی اشیاء دسترسی داشته باشید. فقط از طریق پیام تعامل میکنید.
یعنی چی؟
یعنی تو OOP واقعی، تمرکز روی ساختار نیست، بلکه روی "رفتار" و "تعامل" بین اشیاءه. کد مثل جامعهای از اشیاءه که با هم در ارتباط هستن.
🧩 ارسال و دریافت پیام یعنی چی؟
یعنی به جای اینکه مستقیم یه تابع رو صدا بزنی، یه "درخواست" (پیام) به یه شیء میفرستی، و اون خودش تصمیم میگیره چطور جواب بده.
در C کلاس نداریم، ولی میتونیم با struct و function pointer یه سبک OOP شبیهسازی کنیم:
#include <stdio.h>
typedef struct {
void (*speak)(void);
} Animal;
void dogSpeak() {
printf("Woof!\n");
}
void catSpeak() {
printf("Meow!\n");
}
int main() {
Animal dog = { .speak = dogSpeak };
Animal cat = { .speak = catSpeak };
dog.speak(); // ارسال پیام به سگ
cat.speak(); // ارسال پیام به گربه
}
❤4
این چند وقت من مشکل فرستادن فایل های حجیم واسه دوستام رو داشتم که واسه حل این مشکل یه راه خوب پیدا کردم:
🔁 فرستادن فایلهای حجیم – فقط با یه سرور واسطه!
این روش یه چیز خفن داره:
فایل رو لازم نیست جایی آپلود کنی! فقط لازمه یه VPS موقتی داشته باشی (مثلاً یه سرور ارزون از ابرآروان برای چند ساعت👌)
🚀 روش کار:
۱. روی سیستمت یه فایلسرور راه بنداز:
۲. بعد با این دستور یه تانل از سرور بزن به سیستمت:
۳. حالا کسی که فایل رو میخواد دریافت کنه خیلی راحت روی سیستمش از این لینک که مثال زدم واسه دریافت فایل استفاده میکنه:
و اینطوری فایل مستقیم از سیستمت دانلود میشه.
#ssh #filetransfer #linuxmagic #devtools
🔁 فرستادن فایلهای حجیم – فقط با یه سرور واسطه!
این روش یه چیز خفن داره:
فایل رو لازم نیست جایی آپلود کنی! فقط لازمه یه VPS موقتی داشته باشی (مثلاً یه سرور ارزون از ابرآروان برای چند ساعت👌)
🚀 روش کار:
۱. روی سیستمت یه فایلسرور راه بنداز:
python3 -m http.server 8000
۲. بعد با این دستور یه تانل از سرور بزن به سیستمت:
ssh -R 9090:localhost:8000 user@your-vps-ip
۳. حالا کسی که فایل رو میخواد دریافت کنه خیلی راحت روی سیستمش از این لینک که مثال زدم واسه دریافت فایل استفاده میکنه:
http://your-vps-ip:9090/yourfile.zip
و اینطوری فایل مستقیم از سیستمت دانلود میشه.
#ssh #filetransfer #linuxmagic #devtools
❤3👍1🔥1