Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/273.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Unity-AndroidJavaObject.从另一个线程调用_Java_C#_Android_Multithreading_Unity3d - Fatal编程技术网

Unity-AndroidJavaObject.从另一个线程调用

Unity-AndroidJavaObject.从另一个线程调用,java,c#,android,multithreading,unity3d,Java,C#,Android,Multithreading,Unity3d,现在,我正在制作一个应用程序,使用Android Java插件将消息从Unity发送到蓝牙低能耗设备。像扫描连接和发送消息这样的事情在Unity主线程中运行良好。然而,我想看看我是否可以从一个单独的线程发送消息,就像我发送大约10-20条消息一样,并在每次发送后等待确认以发送下一条消息 我知道Unity不是线程安全的,所以从线程调用某些函数是有问题的,但这是否包括Android Java对象类?请注意,这只是一个简单的例子,希望您能够理解我正在尝试做什么。这在主线程中没有问题 new Syste

现在,我正在制作一个应用程序,使用Android Java插件将消息从Unity发送到蓝牙低能耗设备。像扫描连接和发送消息这样的事情在Unity主线程中运行良好。然而,我想看看我是否可以从一个单独的线程发送消息,就像我发送大约10-20条消息一样,并在每次发送后等待确认以发送下一条消息

我知道Unity不是线程安全的,所以从线程调用某些函数是有问题的,但这是否包括Android Java对象类?请注意,这只是一个简单的例子,希望您能够理解我正在尝试做什么。这在主线程中没有问题

new System.Threading.Thread(() =>
        {
            androidJavaObject.Call("MethodName", message);
        }
        }).Start();

是的,你可以在后台线程上使用它。不能使用UnityEngine.Object派生类。AndroidJavaObject不从中继承。您还可以考虑在现有的本机插件中创建线程。所以在Unity内部,您只能触发将在java类中创建新线程或重用某些现有线程的方法

是的,您可以在后台线程上使用它。不能使用UnityEngine.Object派生类。AndroidJavaObject不从中继承。您还可以考虑在现有的本机插件中创建线程。所以在Unity内部,您只能触发将在java类中创建新线程或重用某些现有线程的方法