[WCF] Вопрос про работу канала
От: SanyaVB  
Дата: 13.03.15 15:16
Оценка:
настройки службы
InstanceContextMode = InstanceContextMode.PerCall
ConcurrencyMode = ConcurrencyMode.Multiple

У контракта есть два метода
byte[] A();
byte[] B();

Привязка используется WSHttpBinding

Возвращаемые данные методов A и B размером 500-700 МБ

Реализация методов на стороне службы такое:

byte[] A()
{
   Console.WriteLine("A");
   return dataA;
}

byte[] A()
{
   Console.WriteLine("B");
   return dataB;
}


Вопрос:
1) С большим интервалом времени выведутся буквы A и B, если на клиенте одновременно из двух потоков вызвать методы A() и B()?
2) С большим интервалом времени выведутся две буквы A, если на клиенте одновременно из двух потоков вызвать метод A()?

Под большим интервалом времени подразумеваю такое время, которое необходимо для обработки одного из методов (A или B)
Re: [WCF] Вопрос про работу канала
От: Sharov Россия  
Дата: 15.03.15 18:34
Оценка:
Здравствуйте, SanyaVB, Вы писали:


SVB>Вопрос:

SVB>1) С большим интервалом времени выведутся буквы A и B, если на клиенте одновременно из двух потоков вызвать методы A() и B()?
SVB>2) С большим интервалом времени выведутся две буквы A, если на клиенте одновременно из двух потоков вызвать метод A()?

1) можно самому попробовать;
2) думается,что интервалы будут приблизительно одинаковы при данных настройках сервиса: при каждом вызове будет создаваться
новый объект и дергаться соотв. метод. Без разницы какой это метод, если они эквивалентны (одинаково долго, например, работают).
Кодом людям нужно помогать!
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.