با سلام ،
در زمان استفاده از TCPClient این خطا در چه شرایطی رخ میده ؟
Connection reset by peer
Printable View
با سلام ،
در زمان استفاده از TCPClient این خطا در چه شرایطی رخ میده ؟
Connection reset by peer
میتونه دلایل مختلفی داشته باشه؛ معمولش این هست که کلاینت برای مدت زمان معینی غیرفعال بوده، و سرور بعد از سپری شدن مدت معینی اتصال کلاینت های غیرفعال را به طور یک طرفه قطع کرده. مشکل از فایروال هم میتونه باشه، یعنی فایروال اتصال کلاینت را به سرور قطع کرده باشه.
شما در چه شرایطی به این مشکل برخوردید؟
سرور چی بود؟ سرور رو هم خودتون نوشته بودید؟
بله ، در واقع سرور پیغام رو میگیره . یک شرط رو بررسی میکنه و جواب رو ارسال میکنه . البته جوابی که برای کلاینت ارسال میشه از طریق یک Thread همیشه آماده باش بطور جداگانه دریافت میشه . که اگه یادتون باشه قبلاً در موردش صحبت کردیم . امکان داره مشکل از این باشه ؟ :متفکر:
این هم کد Thread مربوط به کلاینت :
procedure MyTr.Execute;
begin
while j = 0 do
begin
sleep(100);
Listen;
end;
end;
که در اینجا متد Listen ، تابع ReadLn کنترل TCpClient رو صدا میزنه .