Перейти из форума на сайт.

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в on-line?
Вход Забыли пароль? Первый раз на этом сайте? Регистрация
Компьютерный форум Ru.Board » Компьютеры » Прикладное программирование » Cинхронизация совместной работы с registry...

Модерирует : ShIvADeSt

 Версия для печати • ПодписатьсяДобавить в закладки

Открыть новую тему     Написать ответ в эту тему

mihas83



Gold Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Один процесс пишет в registry значение, другой процесс - читает его каждые 10 секунд...
В части синхронизации нет проблем?
Тот что ты сделал RegOpenKeyEx(...) + RegNotifyChangeKeyValue(...), не "мешает" другому процессу писать в registry новое значение?...

----------
Мы знаем: время растяжимо. Оно зависит от того,
Какого рода содержимым Вы заполняете его. (C. Маршак)

Всего записей: 7855 | Зарегистр. 15-07-2003 | Отправлено: 01:29 08-11-2003
odl455



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Нет конечно. У пишущего процесса никаких проблем не будет.
Просто открой regedit и убедись в этом сам ручками записав какой-нибудь
новый ключик или изменив значение существующего.
 
Но если эти 2 процееса - твои, то такой алгоритм межпроцессного взаимодействия никуда не годится. Просто не бэст.

Всего записей: 659 | Зарегистр. 26-08-2002 | Отправлено: 11:44 08-11-2003
mihas83



Gold Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
odl455

Цитата:
если эти 2 процееса - твои, то такой алгоритм межпроцессного взаимодействия  

В том то и дело, что не мои... (Bоспользовался бы классическими event'ом или мьютексом.) Есть программа диагностики соседней конторы, окончание работы которой надо отследить в реестре (такой интерфейс плохой )... и приступить к основной работe...

Цитата:
убедись в этом сам ручками записав какой-нибудь новый ключик или изменив значение существующего.

Сложно "руками" достичь эффекта одновременности (Один процесс пишет в registry значение, другой процесс - одновременно читает)...  
А сомнения именно в такой ситуации...

Всего записей: 7855 | Зарегистр. 15-07-2003 | Отправлено: 12:32 08-11-2003
odl455



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
А почему второй одновременно читает? Я так понимаю что второй это твоя приблуда. Если воспользуешься RegNotify... то читать будешь только после того как первый запишет новое значение.
 
Впрочем внутренняя синхронизация между Set и Get гарантируется. Так что проблем не будет и в другом случае тоже.

Всего записей: 659 | Зарегистр. 26-08-2002 | Отправлено: 13:05 08-11-2003 | Исправлено: odl455, 13:06 08-11-2003
mihas83



Gold Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
odl455

Цитата:
А почему второй одновременно читает? Я так понимаю что второй это твоя приблуда. Если воспользуешься RegNotify... то читать будешь только после того как первый запишет новое значение.

Смущает, что перед RegNotifyChangeKeyValue(...) делается RegOpenKeyEx(...) без RegCloseKey(hKey).

Всего записей: 7855 | Зарегистр. 15-07-2003 | Отправлено: 13:20 08-11-2003
Bloody_Nokia_Adept



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
mihas83

Цитата:
без RegCloseKey(hKey)

А что ты собираешься закрывать, если не секрет? Вызывая RegOpenKeyEx ты даешь своей проге возможность работать с нужной веткой реестра.
 
Или ты думал, что RegCloseKey закрывает все соединения с реестром в системе?

----------
Дядя Фёдор, пес и кот - все в одном лице живет!
Он обфукать любит сразу, вот такая вот зараза!
Эпиграмма на меня, "1001 ночь ХАИ", 535 гр., 1999 г.

Всего записей: 785 | Зарегистр. 27-11-2002 | Отправлено: 13:36 08-11-2003
mihas83



Gold Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Bloody_Nokia_Adept

Цитата:
Или ты думал, что RegCloseKey закрывает все соединения с реестром в системе?  

Нет, конечно... Но он (hKey) остается открытым с моей стороны, когда пишет другой процесс.

Всего записей: 7855 | Зарегистр. 15-07-2003 | Отправлено: 14:01 08-11-2003
Открыть новую тему     Написать ответ в эту тему

Компьютерный форум Ru.Board » Компьютеры » Прикладное программирование » Cинхронизация совместной работы с registry...


Реклама на форуме Ru.Board.

Powered by Ikonboard "v2.1.7b" © 2000 Ikonboard.com
Modified by Ru.B0ard
© Ru.B0ard 2000-2025

LiteCoin: LgY72v35StJhV2xbt8CpxbQ9gFY6jwZ67r

Рейтинг.ru