كيف نقوم بالمزامنة بين وظائف indy و VCL
#1
السلام عليكم ورحمة الله وبركاته

كما نعرف ان server indy يستعمل تقنية multithreading ؟

كيف نقوم بالمزامنة في هاته الحالة بين وظائف indy و VCL

PHP كود :
procedure TForm1.IdTCPServer1Connect(AThread: TIdPeerThread);
begin
Memo1
.Lines.Add('Connect');
end;
procedure TForm1.IdTCPServer1Disconnect(AThread: TIdPeerThread);
begin
Memo1
.Lines.Add('Disconnect');
end;
procedure TForm1.IdTCPServer1Execute(AThread: TIdPeerThread);
begin
Memo1
.Lines.Add('execute');
end; 

بارك الله فيكم وجزاكم خيرا

بالتوفيق للجميع
كن متواضعا ولا تكن متكبرا // الصبر + المثابرة = النجاح
الرد
#2
باستخدام TIdSync أو TidNotify و إذا اردت استخدامهما راجع المشاركة التالية هنا
أو انظر للسورس في مشروع برنامج محادثة
متغيب لفترة من الزمن بسبب الدراسة
الرد
#3
بارك فيك اخي o15s19 على المشاركة

لكن لم افهم شيئ عن المزامنة وطريقة عملها
كن متواضعا ولا تكن متكبرا // الصبر + المثابرة = النجاح
الرد
#4
السلام عليكم ورحمة الله وبركاته

ما معنا المزامنة ؟

ماهي المشكلة التي تجبرنا على مزامنة بين main thread و الثريدات الاخرة ؟

هل هناك طريقة اخرى غير المزامنة ؟

اعطي مثال بسيط على عمل دلك ؟

اسف على كثرة الاسئلة ( موضوع المزامنة هدا ريح يخرجني من عقلي ) اه اه اه اه اه

بارك الله فيكم وجزاكم خيرا

بالتوفيق للجميع

سلام
كن متواضعا ولا تكن متكبرا // الصبر + المثابرة = النجاح
الرد
#5
[COLOR="Purple"] آسف لاني لا اتابع الأسئلة هذه ِ الأيام بسبب الأنشغال...

بالنسبة للسؤال, صدقني لم ادخل في طريق الـ indy بعد
بالنسبة الى المثال, في المرفقات مثال جميل جدا ً
ارجـو ان تستفاد منه...
في المثال الـ Client يكون في جهاز العميل و الـ Server يكون في جهازك Smile
حيث سيتصل بك مباشرتا ً.
ببساطة تربطه بـ no-ip على سبيل المثال ثم تبدأ بالتحكم Smile

ارجـوان اكون قد افدت ولو بقليل
سلامي لك[/COLOR]


الملفات المرفقة
.rar   MultithreadedClientandServer.rar (الحجم : 9.18 ك ب / التحميلات : 46)
الرد
#6
بارك الله فيك اخي musvc على المرور
لكن المشكلة لم تنحل بعد
بالتوفيق للجميع
كن متواضعا ولا تكن متكبرا // الصبر + المثابرة = النجاح
الرد


التنقل السريع :


يقوم بقرائة الموضوع: بالاضافة الى ( 1 ) ضيف كريم