Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/288.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/list/4.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
C#远程处理中的自定义主循环 我使用IIop.NET与C++中的C++进行通信。由于C++的远程处理框架使用它自己的线程,所以C++调用可以随时发生。_C#_Remoting_Corba_.net Remoting_Iiop - Fatal编程技术网

C#远程处理中的自定义主循环 我使用IIop.NET与C++中的C++进行通信。由于C++的远程处理框架使用它自己的线程,所以C++调用可以随时发生。

C#远程处理中的自定义主循环 我使用IIop.NET与C++中的C++进行通信。由于C++的远程处理框架使用它自己的线程,所以C++调用可以随时发生。,c#,remoting,corba,.net-remoting,iiop,C#,Remoting,Corba,.net Remoting,Iiop,我不想那样 其他一些中间件给了我一个回调,我只能在回调期间执行CORBA函数(可能是在同一个堆栈上,所以简单地同步线程是不起作用的) 因此: 在C#Remoting中有没有类似的方法: while(1) { processPendingRequests(); } 而不是Thread.Sleep(Timeout.Infinite)?或者有其他方法吗?你试过“while(true){processPendingRequests();}”吗?processPendingRequests()是

我不想那样

其他一些中间件给了我一个回调,我只能在回调期间执行CORBA函数(可能是在同一个堆栈上,所以简单地同步线程是不起作用的)

因此:

在C#Remoting中有没有类似的方法:

while(1) {
    processPendingRequests();
}

而不是
Thread.Sleep(Timeout.Infinite)
?或者有其他方法吗?

你试过“while(true){processPendingRequests();}”吗?processPendingRequests()是我刚编出来的名字。问题是:这个函数的实际名称是什么?哦,对不起。不要介意我的评论…你可以创建一个任务队列并把请求放在那里。新线程将使用队列并进行特定的CORBA调用。但这需要重新实现Corba已经完成的所有编组/解编组工作。这也意味着每个新请求都将被解组、重新编组并再次解组。最后,这破坏了Corba为同步函数调用所做的所有同步。。。