Модераторы: gambit
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Многопоточность в WCF 
:(
    Опции темы
OlegKochetov
Дата 14.10.2009, 14:01 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 7
Регистрация: 20.8.2009

Репутация: нет
Всего: нет



Доброго времени суток!
Имеется wcf-сервис, который обеспечивает работу с БД. Хочу реализовать многопоточный доступ к нему со стороны клиента. В одном потоке все работает отлично, а вот создать сразу несколько параллельных запросов к сервису не получается.
Объясните пожалуйста в чем могут быть особенности такой реализации. Получится ли однопоточное приложение переделать в многопоточное или с самого начала надо было писать код, предусматривающий многопоточность? Посоветуйте какие бывают основные ошибки и на что особо обратить внимание.
PM MAIL   Вверх
OlegKochetov
Дата 15.10.2009, 13:29 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 7
Регистрация: 20.8.2009

Репутация: нет
Всего: нет



Проблема собственно в том, что второй клиент, запущенный в отдельном потоке, перехватывает ресурсы и возвращает и свой результат и результат первого потока. В чем может быть проблема? Может нельзя использовать глобальные переменные при реализации класса сервиса? В чем может быть проблема?
PM MAIL   Вверх
PashaPash
Дата 16.10.2009, 13:43 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1233
Регистрация: 3.1.2008

Репутация: 6
Всего: 49



OlegKochetov, покажи код. скорее всего проблема в "глобальных переменных", но совершенно непонятно что именно у тебя глобально объявлено smile


--------------------
PM MAIL WWW   Вверх
OlegKochetov
Дата 19.10.2009, 13:00 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 7
Регистрация: 20.8.2009

Репутация: нет
Всего: нет



Глобально объявлен объект класса, который как раз и содержит все данные. Но я внутри метода класса делаю каждый раз new для этого объекта. Избежать перехвата ресурсов удалось используя lock. Осталась проблема с функцией логирования, которая пишет в файл при помощи StreamWriter. 
Подскажите пожалуйста, правильно ли использовать lock в WCF и как можно еще разрешить мою проблему?
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Прежде чем создать тему, посмотрите сюда:
cully
mr.DUDA
Exception

Используйте теги [code=csharp][/code] для подсветки кода. Используйтe чекбокс "транслит" если у Вас нет русских шрифтов.

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, cully, mr.DUDA, Exception.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Распределённые приложения и сеть | Следующая тема »


 




[ Время генерации скрипта: 0.0443 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.