unity在update中使用socket接收程序卡死

qq_42240840 2020-09-30 10:22:35
在做的一个项目是把unity中的运算部分搬到FPGA上算完再回传unity。采用unity中c#的udp socket进行通信。
unity中在FixedUpdate()中发送原始数据后接收结果数据。在start()中初始化socket。但是一运行unity就卡死。


接收socket初始化函数,放在Start()中


socket接收函数,放在FixedUpdate()中


一旦play就进入这种情况

求各位帮忙。本人主要是做FPGA的。unity和c#才刚接触不久。
...全文
25726 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
A823276759 2021-01-21
  • 打赏
  • 举报
回复
接收不要放在Update里,会阻塞主线程,新建一个线程去接收数据。
遇见女神 2020-10-10
  • 打赏
  • 举报
回复
已经另开了线程,就不要再放unity的update/fixedupdate函数里。另外你写的while是死循环。
tianmao111 2020-10-07
  • 打赏
  • 举报
回复
我曾经用过udp做串口通信,里边坑还是有几个的,你这个我没办法现场帮你,所以只能猜了
tianmao111 2020-10-07
  • 打赏
  • 举报
回复
unity里不让用多线程吧,另外你在update接收函数里每帧都new一个缓冲区吗?本身这个就很没效率吧

2,589

社区成员

发帖
与我相关
我的任务
社区描述
Unity3D相关内容讨论专区
游戏unity 技术论坛(原bbs)
社区管理员
  • Unity3D
  • 芝麻粒儿
  • 「已注销」
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

Unity3D社区公告:

  1. 社区致力于解决各种Unity3D相关的“疑难杂症”。
  2. 社区不允许发布与Unity3D或相关技术无关内容。
  3. 社区版主邀请各位一道为打造优秀社区不懈努力。

试试用AI创作助手写篇文章吧