درود مهمان گرامی! ثبت نام


آموزش ساخت بازی در #C آموزش UDK آموزش مدل سازی در Maya
آموزش ساخت بازی در VB آموزش Unity - پروژه محور آموزش مدل سازی با 3Ds Max
آموزش برنامه نویسی اندروید آموزش Unity - ساخت منو آموزش متحرک سازی در 3Ds Max
آموزش ساخت بازی حدس تصویر آموزش Unity - متحرک سازی مجموعه آموزش های ساخت بازی
● آموزش های رایگان ● تبلیغات دیجیتال هوشمند ● استخدام در فرادرس

امتیاز موضوع:
  • 0 رأی - میانگین امتیازات: 0
  • 1
  • 2
  • 3
  • 4
  • 5
سوکت نویسی چرا هنگ داره ؟
#1
Thumbs Up 
سلام به دوستان گرامی  smiley

ما یک بازی آنلاین داشتیم می ساختیم با سرور سی شارپ

ولی سرور و کلاینت یک عالم پیام خالی موقع قطع ارتباط می فرستن !

با تشکر
پاسخ
#2
بدون ارائه کد هیچ کاری از دوستان بر نمیاد
پاسخ
#3
با سلام

من یک کد نوشتم که اشکالی در سرور که در ویژوال هست نداره !

ولی وقتی می خواهم با یونیتی ارتباط برقرار کنم وصل میشه ، ولی سوکت حتی بعد قطع ارتباط باز می مونه !

و اگه دوباره با یونیتی وصل بشم یونیتی بی نهایت پیام خالی به سرور می فرسته !

و اگه سرور قطع بشه یه عالمه پیام خالی به کلاینت ارسال میشه ! حتی اگه بازی از دیباگ خارج بشه !!!!


یعنی من دستوری که برای دریافت پیام در یونیتی نوشتم اگه حتی بازی از دیباگ خارج بشه بازهم اجرا میشه !!!!!!!!!!
پاسخ
#4
بسته به مدلی که استفاده کردید
میتونید از پراپرتی connected سوکت استفاده کنید(البته تایم اوت شدن و قطع اتصال سوکت زیاد را نشان نمیدهد)
میتونید از سوکت پینگ بگیرید کافیه یک بایت خالی برای سوکت ارسال کنید و از try catch برای هندل کردن خطا استفاده کنید
پاسخ
 سپاس شده توسط qwerty13 ، A.m
#5
اشکال که فهمیدم
باید سوکت را close می کردم !


من از روش async استفاده کردم


یعنی وقتی کاربر وصل شد تو حلقه بی نهایت بهش پینگ بزنم ؟

این کار برای مثلا افراد زیاد ، سرور را سنگین نمی کنه ؟
پاسخ
 سپاس شده توسط qwerty13
#6
البته اگه روشی بدید که از async ها و یا همون begin ها درونش استفاده شده باشه ممنون میشم

مثلا هر زمان ارتباطش قطع شد ، بیا یک متود کال بک را اجرا کن !


چون راستش نمی دونم کجا از ارسال پیام خالی استفاده کنم !

و موقع استفاده ، به موقع ارور نمی ده !



خیلی عجیبه !!! به جای اینکه وقتی قطع شد ارور بده ، وقتی کلاینت بعدی وصل بشه ارور میاد !

از BeginDisconnect استفاده کردم !
پاسخ
#7
هیچکی کمک نمی کنه ؟  depressed
پاسخ
#8
یعنی همه کسایی که بازی آنلاین سی شارپ می سازن به این مشکل بر نخوردن ؟؟؟  depressed surprised
پاسخ
#9
depressed depressed depressed
پاسخ
#10
شما باید کتابی در زمینه شبکه در یونیتی مطالعه کنید
من با سی شارپ و با استفاده از دات نت سرور میزنم هیچ مشکلی نداره
اگر مشکلی هست از یونیتی و مدلی که استفاده کرده اید هست
پاسخ
 سپاس شده توسط A.m


موضوعات مرتبط با این موضوع...
موضوع نویسنده پاسخ بازدید آخرین ارسال
  فارسی نویسی A.m 5 193 12/5/1397، 04:14 عصر
آخرین ارسال: fahimi
  راهنمایی برای برنامه نویسی c# ayynjafari 3 378 3/8/1396، 05:36 صبح
آخرین ارسال: sajjad3011
  سوال در نحوه کد نویسی انیمیشن شلیک و تعویض خشاب ayynjafari 4 907 13/4/1396، 07:36 صبح
آخرین ارسال: salar1298
Question ارتباط کد نویسی با مکانیم moien1 5 1,886 10/3/1395، 03:37 عصر
آخرین ارسال: rafael
Mad مشکل با برنامه نویسی در یونیتی soheil18 1 1,167 31/6/1394، 08:50 عصر
آخرین ارسال: sajjad3011



کاربرانِ درحال بازدید از این موضوع: 1 مهمان