|
|
|
FileSharing при BulkCopy в DB-Lib
|
|||
|---|---|---|---|
|
#18+
есть две программы первая делает BulkCopy из базы в файл data.dat посредством DB-Lib вторая периодически проверяет наличие этого файла на диске и если находит, то считывает из него данные и затем файл удаляет Вопрос. Каким образом сделать во второй программе проверку можно ли начинать читать файл? Ведь он может быть все еще открыт первой программой, а информацию о том, какой именно FileSharing для data.dat выставляет DB-Lib при BulkCopy, я пока никак не могу найти. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.12.2006, 13:42 |
|
||
|
FileSharing при BulkCopy в DB-Lib
|
|||
|---|---|---|---|
|
#18+
Используй внешние средства синхронизации - эвенты. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.12.2006, 16:58 |
|
||
|
FileSharing при BulkCopy в DB-Lib
|
|||
|---|---|---|---|
|
#18+
да, в принципе можно и мьютексами но поскольку программы могут находиться на разных ПК, то пришлось остановиться на примитивном способе - блокирующие файлы-пустышки. В некоторых юниксовых почтовиках такое практикуется. Т.е. перед началом записи в файл данных первая программа создает лок-файл нулевой длины, а по окончании записи удаляет его.. Вторая проверяет наличие файла данных и если находит то проверяет еще и наличие лок-файла. Если лок-файл отсутствует, то чтение разрешено. Примитивно, но работает. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.12.2006, 18:00 |
|
||
|
FileSharing при BulkCopy в DB-Lib
|
|||
|---|---|---|---|
|
#18+
Если коннектишься со второй проги к SQL Server то можно так: 1. Первая прога создает глобальную временную процедуру и в ней ApplicationLock на сервере. 2. Вторая вызывает эту процедуру. Пока первая прога свой ApplicationLock не снимет, вторая к следующему оператору не переместится. Тоже вроде мьютекса, только до фени где вторая прога крутится. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.12.2006, 19:51 |
|
||
|
|

start [/forum/topic.php?fid=57&fpage=318&tid=2029808]: |
0ms |
get settings: |
5ms |
get forum list: |
10ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
49ms |
get topic data: |
8ms |
get forum data: |
3ms |
get page messages: |
44ms |
get tp. blocked users: |
1ms |
| others: | 198ms |
| total: | 322ms |

| 0 / 0 |
