powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / C++ [игнор отключен] [закрыт для гостей] / FileSharing при BulkCopy в DB-Lib
4 сообщений из 4, страница 1 из 1
FileSharing при BulkCopy в DB-Lib
    #34196469
olden69
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
есть две программы
первая делает BulkCopy из базы в файл data.dat посредством DB-Lib
вторая периодически проверяет наличие этого файла на диске и если находит, то считывает из него данные и затем файл удаляет

Вопрос. Каким образом сделать во второй программе проверку можно ли начинать читать файл? Ведь он может быть все еще открыт первой программой, а информацию о том, какой именно FileSharing для data.dat выставляет DB-Lib при BulkCopy, я пока никак не могу найти.
...
Рейтинг: 0 / 0
FileSharing при BulkCopy в DB-Lib
    #34200792
Фотография MasterZiv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Используй внешние средства синхронизации - эвенты.
...
Рейтинг: 0 / 0
FileSharing при BulkCopy в DB-Lib
    #34201033
olden69
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
да, в принципе можно и мьютексами
но поскольку программы могут находиться на разных ПК, то пришлось остановиться на примитивном способе - блокирующие файлы-пустышки. В некоторых юниксовых почтовиках такое практикуется.
Т.е. перед началом записи в файл данных первая программа создает лок-файл нулевой длины, а по окончании записи удаляет его.. Вторая проверяет наличие файла данных и если находит то проверяет еще и наличие лок-файла. Если лок-файл отсутствует, то чтение разрешено.
Примитивно, но работает.
...
Рейтинг: 0 / 0
FileSharing при BulkCopy в DB-Lib
    #34205162
frantic
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Если коннектишься со второй проги к SQL Server то можно так:
1. Первая прога создает глобальную временную процедуру и в ней ApplicationLock на сервере.
2. Вторая вызывает эту процедуру.
Пока первая прога свой ApplicationLock не снимет, вторая к следующему оператору не переместится. Тоже вроде мьютекса, только до фени где вторая прога крутится.
...
Рейтинг: 0 / 0
4 сообщений из 4, страница 1 из 1
Форумы / C++ [игнор отключен] [закрыт для гостей] / FileSharing при BulkCopy в DB-Lib
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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