我的代码在初始化时会创建许多信号量。每一个都与一个 ftp 服务器相关联,我的系统将从多个工作流中与之通信。随着相同工作流的不同实例开始,我将信号量注入到工作流中,具体取决于工作流将与哪个 ftp 站点进行通信。
我遇到的情况是,应该包含相同信号量的 2 个或更多工作流尝试访问 ftp 服务器的次数超过了信号量应允许的容量。
我已经命名了信号量,因为我认为我可以在建立 ftp 连接的位置检索名称,以便我可以检查正确的信号量是否在正确的工作流程中。
如何访问信号量的名称?
我试图构建一个从信号量继承的对象并添加一个名称字段,但这不起作用,因为信号量是密封的
public class MySemaphore : System.Threading.Semaphore
{
string SemaphoreName = "Bob";
}