نوشتن بایت بر روی سوکت در زبان های برنامه نویسی

نوشتن بایت بر روی سوکت در زبان های برنامه نویسی

196
۲ سال پیش
0

سلام
روند نوشتن باید در سوکن به این شکله که وقتی شما packet ی رو روی سوکت مینوسید،اساس کارش

به این شکله که بدنبال عبارت \r\n میگرده و وقتی به این عبارت برسه،داده رو روی سوکت مینویسه.

مثلا شما اگه متن hello world\r\n رو بفرستید،اشاره گر تا عبارت \r\n میره و بلافاصله بعد دیدن این عبارت،خودکار داده رو روی سوکت مینویسه.

البته این مورد توی اکثر زبان های برنامه نویسی،بصورت built-in قرار داده شده.

ولی توی زبان های نوپایی مثل بیسیک که میشه باهاش برای موبایل،برنامه نویسی کرد،این مشکل وجود داره.

و اما این شکل چطوری خودشو نشون میده؟

وقتی شما packet ی رو میفرستید،اگه عبارت \r\n رو اخر packet نزارید،حداقل 3 ثانیه طول میکشه تا داده رو روی سوکت بنویسه.

دلیلش اینکه سعی میکنه این عبارت \r\n رو پیدا کنه و داده های قبلش رو بفرسته ولی نمیتونه و در آخر

خودش قرار میده و میفرسته.

برای رفع این مشکل،کافیه خودتون کد \r\n رو که معادلش میشه 10 و 13 رو بصورت بایت در انتهای packet قرار بدید و بفرستید.

البته این تجربه من بوده و ممکنه توضیحاتم اشتباه باشه ولی همین راه حل مشکلم رو حل کرده.

با تشکر

برچسب ها :
  • سوکت
  • برنامه نویسی
نظر خود را بنویسید...