Кажется, у меня проблема с WCF.
Допустим, у меня есть два пользователя, и каждый из них создал свой собственный экземпляр класса, представленный на хосте WCF, используя net.tcp с конечной точкой, например, "net.tcp: // localhost: 32000 / SymHost /" Класс является контекстом PerSession, а параллелизм является реентерабельным. Класс предоставляет два метода Alive (), которые сразу возвращают bool из true, и вставленный мною AliveWait, который выполняет Thread.Sleep в течение 4 секунд перед возвратом true (в целях тестирования).
Теперь клиент 1 вызывает AliveWait (), в течение которого он блокируется, что достаточно справедливо, но затем, если клиент 2 делает вызов Alive () в своем собственном экземпляре, он должен ждать, пока не будет возвращен вызов клиента 1 - это поведение не то, что я ожидал? Я ожидал, что клиент 2 продолжит, как будто ничего не произошло, или это связано с тем, что они оба используют одну и ту же конечную точку?
Может кто-нибудь объяснить, что происходит и как я могу убедиться, что клиент 2 может вызывать свой собственный экземпляр непрерывно?
Любая помощь высоко ценится!