位置: 编程技术 - 正文

Unity3d(C#)错误提示:禁止在线程中进行游戏对象比较!(unity错误cs1002)

编辑:rootadmin

推荐整理分享Unity3d(C#)错误提示:禁止在线程中进行游戏对象比较!(unity错误cs1002),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:unity报错汇总,unity microsoft visual c#报错 报错,unity错误cs1061,unity错误cs1002,unity错误cs1002,unity 错误,unity 错误,unity microsoft visual c#报错 报错,内容如对您有帮助,希望把文章链接给更多的朋友!

今天刚刚写完异步Socket客户端的数据收发,在进行测试的时候,Unity报出错误:

详情如下:

在Unity3d官方论坛有网友请教了这个问题

答案如下:

翻译过来就是说:

在Unity中需要遵循C#的线程安全,不能在另外的线程对Unity的GameObject进行相等比较操作。

在我的工程中,当Socket BeginConnect的时候就会 调用WindowManager来显示一个等待界面

当Connect Success或者failed的时候,就会关闭。

显示界面是在Unity线程中执行

关闭界面是在Socket的异步回调中执行

Unity3d(C#)错误提示:禁止在线程中进行游戏对象比较!(unity错误cs1002)

从Mono的断点来看这两个不是同一个线程。

因为在Wait.GetSingleton().Close() 中有用到WindowManager.GetSingleton()

如下:

所以在判断 m_sInstance == null 的时候出现了错误。

解决方法:

将关闭等待界面的代码移到了Update中。

unity连接数据库工具 这里只是我学习unity的一些笔记,有些是自己的总结,有些是请教的大神,有些是在网上查的资料(本来该给个链接的,临时也不好找,慢慢再补上)。

PHP 查询脚本 这里只是我学习unity的一些笔记,有些是自己的总结,有些是请教的大神,有些是在网上查的资料(本来该给个链接的,临时也不好找,慢慢再补上)。

Unity C#用WWW操作数据库 这里只是我学习unity的一些笔记,有些是自己的总结,有些是请教的大神,有些是在网上查的资料(本来该给个链接的,临时也不好找,慢慢再补上)。

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

上一篇:unity里设置窗口大小和位置的代码(unity设置窗口位置)

下一篇:unity连接数据库工具(unity连接数据库能做什么)

免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

鄂ICP备2023003026号

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

友情链接: 武汉网站建设 电脑维修 湖南楚通运网络