|
Не работает lock в многопоточном сервисе
|
|||
---|---|---|---|
#18+
Добрый день всем. У меня есть служба где в коде два объекта System.Threading.Timer в своих обработчиках вызывают некоторую функцию: void func() { lock (locker) { eventLog1.WriteEntry("Сообщение 1"); //здесь долго чё-то выполняется eventLog1.WriteEntry("Сообщение 2"); } } Дак вот этот lock не работает, я вижу это на контрольных сообщениях, которые поставил вначале блока lock и в конце, т.е. сначала появляется Сообщение 1 потом ещё несколько Сообщение 1 и потом только Сообщение 2 Никто не знает дело? Заранее спасибо. ... |
|||
:
Нравится:
Не нравится:
|
|||
09.09.2013, 08:55 |
|
Не работает lock в многопоточном сервисе
|
|||
---|---|---|---|
#18+
Джек, Блокировать надо общие ресурсы, а не операции ... |
|||
:
Нравится:
Не нравится:
|
|||
09.09.2013, 09:09 |
|
Не работает lock в многопоточном сервисе
|
|||
---|---|---|---|
#18+
там внутри лока и идёт работа с общим массивом. ... |
|||
:
Нравится:
Не нравится:
|
|||
09.09.2013, 09:13 |
|
Не работает lock в многопоточном сервисе
|
|||
---|---|---|---|
#18+
Джектам внутри лока и идёт работа с общим массивом.Значит объект locker у каждого потока свой. ... |
|||
:
Нравится:
Не нравится:
|
|||
09.09.2013, 09:26 |
|
Не работает lock в многопоточном сервисе
|
|||
---|---|---|---|
#18+
Алексей К, Ну я его объявил в классе так: static object locker = new object(); . ... |
|||
:
Нравится:
Не нравится:
|
|||
09.09.2013, 09:31 |
|
Не работает lock в многопоточном сервисе
|
|||
---|---|---|---|
#18+
TorreДжек, Блокировать надо общие ресурсы , а не операции ... |
|||
:
Нравится:
Не нравится:
|
|||
09.09.2013, 09:50 |
|
Не работает lock в многопоточном сервисе
|
|||
---|---|---|---|
#18+
Залоченный объект не обязательно должен быть статическим. ... |
|||
:
Нравится:
Не нравится:
|
|||
09.09.2013, 09:52 |
|
Не работает lock в многопоточном сервисе
|
|||
---|---|---|---|
#18+
А, вообще, судить по вот этому неформатированному огрызку кода сложно. Могу предложить кофейные зёрна. ... |
|||
:
Нравится:
Не нравится:
|
|||
09.09.2013, 09:53 |
|
Не работает lock в многопоточном сервисе
|
|||
---|---|---|---|
#18+
В данном случае lock приносит больше вреда, используй WaitHandle ... |
|||
:
Нравится:
Не нравится:
|
|||
09.09.2013, 09:56 |
|
Не работает lock в многопоточном сервисе
|
|||
---|---|---|---|
#18+
Torre, С ожиданием ManualResetEvent? ... |
|||
:
Нравится:
Не нравится:
|
|||
09.09.2013, 10:10 |
|
|
start [/forum/topic.php?fid=20&fpage=149&tid=1404091]: |
0ms |
get settings: |
10ms |
get forum list: |
14ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
69ms |
get topic data: |
14ms |
get forum data: |
3ms |
get page messages: |
51ms |
get tp. blocked users: |
2ms |
others: | 13ms |
total: | 184ms |
0 / 0 |