Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/291.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# 我应该共享管道代理实例吗?_C#_Wcf - Fatal编程技术网

C# 我应该共享管道代理实例吗?

C# 我应该共享管道代理实例吗?,c#,wcf,C#,Wcf,我有一个代理端点net。pipe://localhost/PipeConsole和一个通信接口。 我在程序中有两个部分希望以不同的方式使用这个接口(调用不同的方法子集,可能会截取) 他们每个人应该创建管道代理实例还是我应该共享它? 如果两个线程同时尝试访问同一个管道代理方法会怎么样 ChannelFactory<IManagementConsole> pipeFactory = new ChannelFactory<IManagementConsole&

我有一个代理端点
net。pipe://localhost/PipeConsole
和一个通信接口。 我在程序中有两个部分希望以不同的方式使用这个接口(调用不同的方法子集,可能会截取) 他们每个人应该创建管道代理实例还是我应该共享它? 如果两个线程同时尝试访问同一个管道代理方法会怎么样

ChannelFactory<IManagementConsole> pipeFactory =
            new ChannelFactory<IManagementConsole>(
                new NetNamedPipeBinding(),
                new EndpointAddress("net.pipe://localhost/PipeConsole"));
ChannelFactory管道工厂=
新渠道工厂(
新建NetNamedPipeBinding(),
新端点地址(“net。pipe://localhost/PipeConsole"));

ChannelFactory实例是线程安全的,所以您应该很好,我自己在多个线程之间共享同一个代理实例,它工作得很好