السلام عليكم
السؤال واضح من العنوان
بدي اعمل برنامج صغير يقوم بعمل العمليات الحسابيه جمع طرح ضرب قسمه
لكن عن طريقة الـ threads
كيف ممكن ان ابداء عمل برنامج في الـ c++
ارجوا المساعدة العاجله
السلام عليكم
السؤال واضح من العنوان
بدي اعمل برنامج صغير يقوم بعمل العمليات الحسابيه جمع طرح ضرب قسمه
لكن عن طريقة الـ threads
كيف ممكن ان ابداء عمل برنامج في الـ c++
ارجوا المساعدة العاجله
أنا بعتقد إنو PThread في نسخة على منصة الويندوز وإذا بدك كمان شوف دعم ال thread بمكتبات الويندوز وهاد الرابط:
http://msdn.microsoft.com/en-us/library/windows/desktop/ms682516(v=vs.85).aspx
تم تعديل هذه المشاركة بواسطة a.mkh في 5 فبراير 2012 في 18:53
السلام عليكم أخي أبو سراج في الحقيقة الموضوع الذي تبحث عنه دوّخني وأنا أبحث عنه .. وبالآخر وجدت الجواب هنا في هذا المنتدى
اجاب عنه الأخ الكريم : علي الزيودي .. والذي أشكره بالفعل على تلك المعلومة الواضحة والرائعة حيث كتب البرنامج التالي:
#include <iostream>
#include <windows.h>
#include<cstring>
using namespace std;
DWORD WINAPI ThreadProc( LPVOID lpParam )
{
Beep(50,60000);
return 0;
};
int main( )
{
DWORD dwThreadId;
HANDLE hThread = CreateThread(
NULL, // default security attributes
0, // use default stack size
ThreadProc, // thread function
NULL, // argument to thread function
0, // use default creation flags
&dwThreadId); // returns the thread identifier
cout<<"In the same time of the sound !\n";
system("pause");
while(WaitForSingleObject(hThread,100)!=WAIT_OBJECT_0);
CloseHandle(hThread);
return 0;
}وفي الحقيقة وبعد أن فهمت الفكرة تماما ,, إليك برنامج صغير جداً أرجو أن تستفيد منه ..
بسم الله الرحمن الرحيم
#include<iostream.h>
unsigned long __stdcall threadname1(void *){cout<<"a"<<endl;return 0;}
unsigned long __stdcall threadname2(void *){cout<<"b"<<endl;return 0;}
void main()
{
unsigned long anyname1,anyname2;
createthread(0,0,threadname1,0,0,&anyname1);
createthread(0,0,threadname2,0,0,&anyname2);
while(1){
cout<<"i am sure you will like it"<<endl;
cout<<"BY MOSTAFA 36A2"<<endl;
}
}تم تعديل هذه المشاركة بواسطة مصطفى 36a2 في 10 فبراير 2012 في 19:03
أعتذر عن الكود السابق كان فيه خطأ بسيط :P وهو عدم اضمان مكتبة الwindows.h
أعتذر عن ذلك وإليك أخي البرنامج المصحح : تقبل اعتذاري
#include<iostream.h>
#include<windows.h>
unsigned long __stdcall threadname1(void *){cout<<"a"<<endl;return 0;}
unsigned long __stdcall threadname2(void *){Beep(6000,30000);return 0;}
void main()
{
unsigned long anyname1,anyname2;
CreateThread(0,0,threadname1,0,0,&anyname1);
CreateThread(0,0,threadname2,0,0,&anyname2);
while(1){
cout<<"i am sure you will like it"<<endl;
cout<<"BY MOSTAFA 36A2"<<endl;
}
}اقتباسأعتذر عن الكود السابق كان فيه خطأ بسيط وهو عدم اضمان مكتبة الwindows.h
حقا لقد تعجبت من إستخدام createthread :) مع إدراج iostream فقط