ببینید اگر می خواید همه ی این پروسس ها یه جا برن تو بک گراند باید یه & بین این ها بگذارید
اینو امتحان کنید نتیجه رو بگین ببینیم جواب گرفتین یا نه
کد:
g++ -lpthread main_server.cpp & g++ -lpthread ClientSocket.cpp & g++ -lpthread main_client.cpp & g++ -lpthread ServerSocket.cpp & g++ -lpthread Socket.cpp
البته این فقط یه حدسه بعد از زدن این دستور، یه jobs بگیرین ببینین الآن آیا اینا run هستن یا خیر
البته چند تا نکته مبهمه برام :
تو bash ما عملا مکانیزم thread نداریم ( با شک و تردید میگما مطمئن نیستم )
عوضش jobs ها رو داریم، یعنی همه پروسس هستند که می تونن توی پس زمینه run بشن
پس ما نمی تونیم تو bash ، یه برنامه multithread داشته باشیم و عملا ما باید parallel processing انجام بدیم
اگر بخوایم parallel processing انجام بدیم یه روشی داره این شکلی :
کد:
cat listofthings.txt | parallel --max-procs=5 --group 'echo "Thing: {}"'
تک تک این کامند ها رو جدا جدا هر کدوم توی یه خط بریزین توی یه فایل متنی بدین به خورد این کامنده ببینیم چی میشه نتیجه ش
فرض کنید قراره هر کدوم از این فایل ها رو جدا جدا اجرا کنید، اونجوری تو هر خط فایل متنی بنویسید دستورات رو