c# - 可以从主线程调用 统一处理服务器侦听器的事件时出错
问题描述
我使用 QuObject 源连接到套接字 io 服务器以发送和获取侦听器(发射)。像这样 :
socketConnection = IO.Socket("127.0.0.1:3000");
socketConnection.On(QSocket.EVENT_CONNECT, () =>
{
onConnectedSocket();
}
这是我创建委托和事件的代码:
public delegate void SocketConnectionListener();
public event SocketConnectionListener OnSocketConnectionListener;
protected virtual void onConnectedSocket() => OnSocketConnectionListener?.Invoke();
当我想使用此事件通过另一个脚本处理连接时,我会遇到这样的错误
ConnectedMsg.SetActive(true);
错误是这样的:
SetActive() can only be called from the main thread.
那么我该如何解决这个问题呢?
解决方案
推荐阅读
- ruby-on-rails - 如何在 Ruby on Rails 中使用带有 OTP 的电话进行注册
- javascript - for 循环中的 AJAX 问题:如何对数组的每个元素进行 ajax 调用?
- linux - 对具有多个 netCDF 文件的目录同时执行 shell 和 cdo 操作
- python - Python Django - 根据作为用户的所有者计算对象
- sql - 如何从数据库中的月份之间选择数据库中的数据?
- javascript - AJAX POST 实际上并未使用 Django 发送 POST 数据
- java - 使用 BroadcastState 模式时如何触发下游 onEventTime() 方法?
- php - Laravel 验证需要至少一个没有空字段的数组
- python - 试图将数据框保存到 oracle 数据库 dtype np.dtype 给出 valueerror
- laravel - Laravel - 电子邮件和数据库的通知