Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / WCF, Web Services, Remoting [игнор отключен] [закрыт для гостей] / wcf webget multithread как? / 19 сообщений из 19, страница 1 из 1
19.01.2010, 17:51
    #36418794
AlexeiK
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
wcf webget multithread как?
operationcontract типа webget
у класса servicehost имеются атрибуты InstanceContextMode:=InstanceContextMode.PerCall, ConcurrencyMode:=ConcurrencyMode.Multiple)

вот открываю два разных браузера.
ставлю BP на выходе из метода определенным атрибутом operationcontract(то есть всего один метод у контракта).
запускаю запрос из 1 браузера,сажается на BP.
запускаю запрос из 2 браузера, ине происходит всплытие BP.
почему?

BP=breakpoint.
...
Рейтинг: 0 / 0
20.01.2010, 13:56
    #36420423
AlexeiK
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
wcf webget multithread как?
народ, ну я так понимаю InstanceContextMode и ConcurrencyMode не дожлны зависеть от типа binding верно?
просто я не смогу в дебаге получить ситуацию для percall & multiple и стал сомневаться работают ли настройки ServiceBehaivor
...
Рейтинг: 0 / 0
21.01.2010, 11:09
    #36422195
LR
LR
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
wcf webget multithread как?
Хм, а какое отношение эти параметры имеют к отладке? Imho, никакого...
Может попробовать запускать оба раза из студии по правой мыше Debug->Start new instance?
...
Рейтинг: 0 / 0
21.01.2010, 11:27
    #36422258
D129
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
wcf webget multithread как?
LRХм, а какое отношение эти параметры имеют к отладке? Imho, никакого...
Может попробовать запускать оба раза из студии по правой мыше Debug->Start new instance?
+1

Визуал студия при попадании в брейкпойнт останавливает все потоки (хотя есть настройка, где это можно отменить).
Хотя - лучший способ дебаггить мультитрейдинг - это конечно лог.
...
Рейтинг: 0 / 0
21.01.2010, 11:29
    #36422264
LR
LR
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
wcf webget multithread как?
AlexeiK,

рекомендую log4net (отлаживать многопоточные задачи в отладчике иногда бывает крайне неудобно, и эта штука выручает)
http://logging.apache.org/log4net/download.html
http://sadi02.wordpress.com/2008/06/29/log4net-tutorial-in-c-net-how-can-i-show-log-in-a-file/
http://megadarja.blogspot.com/2008/04/log4net.html
...
Рейтинг: 0 / 0
21.01.2010, 13:36
    #36422705
AlexeiK
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
wcf webget multithread как?
LR,

не не ты что пошутил :)
дебаг на основе логов это вчерашний день , когда я сижу в студии.

хочется из студии все сделать.

мне точно понятно,что при открытии новых потоков в wcf студия должна ставить бряки на всех них и ждать меня и ядолжен видеть,что потоки созданы.

как?
...
Рейтинг: 0 / 0
21.01.2010, 15:28
    #36423131
LR
LR
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
wcf webget multithread как?
AlexeiKдебаг на основе логов это вчерашний день , когда я сижу в студии.
ну-ну, дело, конечно, хозяйское...

AlexeiKкак?
ну а ты второй браузер точно под дебагом запускаешь?

AlexeiKзапускаю запрос из 1 браузера,сажается на BP
D129Визуал студия при попадании в брейкпойнт останавливает все потоки (хотя есть настройка, где это можно отменить).
...
Рейтинг: 0 / 0
21.01.2010, 16:14
    #36423300
AlexeiK
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
wcf webget multithread как?
браузер под дебагом? :)
я отправляю два запроса из браузера.
1 запрос ударяет BP
2 запрос висит и никакого удара по BP нету.
дальше я нажимаю f5 и ухоже с bp и тут же прихожу на BP от второго запроса. и при этом я смотрю что номер нити тот же самый,что и для первого запроса.

также попробовал с опцией : Визуал студия при попадании в брейкпойнт останавливает все потоки (хотя есть настройка, где это можно отменить).

результата нету.
...
Рейтинг: 0 / 0
21.01.2010, 16:36
    #36423371
bured
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
wcf webget multithread как?
Старая служба достаётся из пула. В serviceThrottling что у вас?
...
Рейтинг: 0 / 0
21.01.2010, 17:17
    #36423512
AlexeiK
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
wcf webget multithread как?
bured,

throttleBehavior.MaxConcurrentCalls = 40
throttleBehavior.MaxConcurrentInstances = 20
throttleBehavior.MaxConcurrentSessions = 20
...
Рейтинг: 0 / 0
21.01.2010, 18:44
    #36423713
bured
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
wcf webget multithread как?
Да, это пуллинг сервисов. Ограничить его можно, но где-то на низком уровне. Да и не вижу смысла.
...
Рейтинг: 0 / 0
22.01.2010, 10:13
    #36424408
AlexeiK
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
wcf webget multithread как?
bured,

не понял, про что ответ?
...
Рейтинг: 0 / 0
22.01.2010, 23:49
    #36426315
bured
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
wcf webget multithread как?
AlexeiKи при этом я смотрю что номер нити тот же самый,что и для первого запроса

buredДа, это пуллинг сервисов.
...
Рейтинг: 0 / 0
25.01.2010, 10:12
    #36428264
AlexeiK
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
wcf webget multithread как?
bured,

а как смоделировать ситуацию,чтобы пуллинг не делал очереди?
...
Рейтинг: 0 / 0
26.01.2010, 07:01
    #36430474
bured
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
wcf webget multithread как?
AlexeiKbured,

а как смоделировать ситуацию,чтобы пуллинг не делал очереди?
вот тут у человека какие-то наброски. К сожалению без исходников. Попробую на след. выходных воссоздать.
...
Рейтинг: 0 / 0
26.01.2010, 14:35
    #36431487
AlexeiK
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
wcf webget multithread как?
bured,

да чтото мелочно там.
итог по хелпу можно сказать.

интересна природа этого явления.
ведь в документации написано,что на каждый вызов создается экземпляр.
а тут смоделировать не получается.
...
Рейтинг: 0 / 0
30.01.2010, 08:45
    #36439887
bured
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
wcf webget multithread как?
bured
вот тут у человека какие-то наброски. К сожалению без исходников. Попробую на след. выходных воссоздать.
чушь собачья короче. В статье используется какой-то сторонний класс ResourcePool. Кажется вот этот VMware vSphere API. Нигде упоминаний нет. Исходников нет. Код обрывочный.

Индус и есть индус.
...
Рейтинг: 0 / 0
30.01.2010, 15:27
    #36440129
bured
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
wcf webget multithread как?
AlexeiK,

сбил я тебя с толку. Всё правильно работает:
InstanceContextMode.PerCall, ConcurrencyMode:=ConcurrencyMode.Multiple
при
throttleBehavior.MaxConcurrentCalls = 40
throttleBehavior.MaxConcurrentInstances = 20
throttleBehavior.MaxConcurrentSessions = 20

должен создавать несколько инстансов.
Надо с отладчиком разбираться.
...
Рейтинг: 0 / 0
01.02.2010, 10:17
    #36441512
AlexeiK
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
wcf webget multithread как?
bured,

в реале, все работает - создаются потоки,если например я включаю дебаг и внешнее приложение кидает запросы.

но вот сам со своей машины не могу. может просто как то браузерами надо управлять , у меня браузеры через прокси,про что я забыл :)
...
Рейтинг: 0 / 0
Форумы / WCF, Web Services, Remoting [игнор отключен] [закрыт для гостей] / wcf webget multithread как? / 19 сообщений из 19, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]