位置: 编程技术 - 正文

unity3d 异步socket packet序列化(unity socket udp)

编辑:rootadmin
using UnityEngine;using System.Collections;using System;using System.Threading;using System.Net;using System.Net.Sockets;using System.IO;using mutils; using scopely.msgpacksharp;using structs; public class AsyncSocket{ //单例模式 private static AsyncSocket instance; public Socket clientSocket; public string host = ".0.0.1"; public int hostPort = ; public static AsyncSocket GetInstance () { if (instance == null) { instance = new AsyncSocket (); } return instance; } public AsyncSocket () { //创建Socket对象 clientSocket = new Socket (AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp); //服务器IP地址 IPAddress ipAddress = IPAddress.Parse (host); //这是一个异步的建立连接,当连接建立成功时调用connectCallback方法 IAsyncResult result = clientSocket.BeginConnect (ipAddress, hostPort, new AsyncCallback (connectCallback), clientSocket); //当连接超过5秒还没成功表示超时,非必须 //这段succ变量,偶尔在Mono里报错,实在看不出问题,去掉也没问题// bool succ = result.AsyncWaitHandle.WaitOne ();// if (!succ) {// //超时// Debug.Log ("time out ");// closeSocket ();// } } private void sendCallback (IAsyncResult asyncConnect) { int bytesSent = clientSocket.EndSend (asyncConnect); Debug.Log ("sendCallback: sent" &#; bytesSent); closeSocket (); } private void connectCallback (IAsyncResult asyncConnect) { Debug.Log ("EndConnect"); clientSocket.EndConnect (asyncConnect); businessComm (); } private void businessComm () { if (!clientSocket.Connected) { Debug.Log ("businessComm clientSocket.Connected false"); closeSocket (); } MemoryStream memStream = new MemoryStream (); memStream.Write (SocketUtils.IntToByte (), 0, 4); memStream.Write (SocketUtils.IntToByte (), 0, 4); MyMessage message = new MyMessage (); message.MyNumber = ; message.MyString = "abcde"; byte[] datas = MsgPackSerializer.SerializeObject (message); memStream.Write (SocketUtils.IntToByte (datas.Length), 0, 4); memStream.Write (datas, 0, datas.Length); byte[] byteData = memStream.GetBuffer (); clientSocket.BeginSend (byteData, 0, byteData.Length, SocketFlags.None, new AsyncCallback (sendCallback), clientSocket); } //关闭Socket public void closeSocket () { Debug.Log ("Socket Closed"); clientSocket.Close (); } }

推荐整理分享unity3d 异步socket packet序列化(unity socket udp),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:unity的socket,unity socket udp,unity异步加载原理,unity异步执行,unity异步加载场景优化,unity异步执行,unity异步执行,unity异步加载原理,内容如对您有帮助,希望把文章链接给更多的朋友!

unity3d 异步socket packet序列化(unity socket udp)

触发器调用:

?void OnTriggerEnter (Collider col) { if (col.gameObject.tag == "Player") { AsyncSocket.GetInstance (); } }

Unity3D游戏开发之回合制游戏原型的实现

Unity3D游戏开发之鼠标旋转、缩放实现3D物品展示

OnApplicationFocus 前两天用到ngui做拖拽效果,将一张图片拖拽到另一个固定的子里,看的是NGUI的一个demo做的,但是会有一个问题,就是在推拽过程中,如果切换应用程

标签: unity socket udp

本文链接地址:https://www.jiuchutong.com/biancheng/375774.html 转载请保留说明!

上一篇:NGUI(女鬼照片)

下一篇:Unity3D游戏开发之回合制游戏原型的实现(Unity3D游戏开发(第2版))

  • 车辆出现质量问题
  • 转出未交增值税是借方还是贷方
  • 一张报关单可以分两次退税吗
  • 增值税纳税申报时间
  • 企业所得税清算备案日和结束日怎么填
  • 文化事业建设费怎么申报
  • 通讯费没有公司抬头怎么报销
  • 房地产企业售楼降价法律条文
  • 税款追征期起算点 增值税重新计算
  • 代扣和代垫
  • 企业收到政府补助要交税吗
  • 不动产修理领用原材料账务处理?
  • 补记以前年度折旧
  • 报销发票财务一旦作废报销人可以收回吗?
  • 增值税抵扣期限多少天
  • 施工费可以开13个点吗
  • 认缴制下股权转让如何不交税
  • 发票已勾选未确认
  • mac 双系统如何调整系统空间
  • 电费预提费用
  • 车辆哪些费用计税
  • go进程管理
  • 民间非营利组织会计报表
  • 专项资金下达期限
  • ftp指什么
  • php fopen()
  • php编程基本语法是什么
  • Symfony2实现在doctrine中内置数据的方法
  • 购买的固定资产退回账务处理
  • react.strictmode
  • 批发商和零售商属于
  • 法人跟纳税人必须是一个人吗
  • web前端基础是什么
  • 3d人体骨骼模型软件
  • 进项税大于销项税怎么结转
  • 房屋租赁可以开具住宿费发票吗
  • 税费减免政策2020
  • 公司购买办公家具可以抵扣吗
  • 万元版和十万元版发票图片
  • 工业企业提供劳务
  • 企业所得税的扣除是什么意思
  • sqlserver 中charindex/patindex/like 的比较
  • sql server sql文件
  • 小规模交社保有人数限制吗
  • 个人所得税的税率表最新的
  • 个体工商户要做账报税吗
  • 合并报表存货的计税基础
  • 无形资产摊销是按原值吗
  • 以前年度损益调整会计分录
  • 建筑业普票与专票怎么抵扣
  • 申报成功后怎么更正申报
  • 疫情期间增值税减免政策截止时间
  • 税控盘没有抄税是什么意思
  • 水利工程施工税率是多少
  • 以前年度多计提了费用
  • 老板垫付工资账务处理
  • 应收账款无法收回说明模板
  • 外聘人员的劳务合同模板
  • 某个项目投资多少钱怎么算
  • 一达通退税需要具备的条件?
  • 外经证适用范围
  • 私人贴现做账
  • win10累积更新 卡住
  • win8开始屏幕设置
  • win10更新中重启会怎么样
  • rpm软件安装命令
  • Android OpenGL ES(三)----编程框架
  • python必学的os模块详解
  • js常用排序算法
  • win7支持快速启动吗
  • python中字符串类型和元组类型均不可变
  • 女鬼照片
  • vue.js如何使用
  • python程序讲解
  • jquery右击事件
  • jquery中常用动画方法有哪些
  • javascript视频教程推荐
  • 深圳国税局发票查询
  • 期间费用如何分摊到成本中
  • 公共基础设施项目所得税优惠目录
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设