![]() |
|
Модераторы: Daevaorn |
![]()
|
|
| anna |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 10 Регистрация: 18.5.2004 Репутация: нет Всего: нет |
Помогите! Процессы не идут одновременно!!!
|
|||
|
||||
| mr.DUDA |
|
|||
|
3D-маньяк ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 8244 Регистрация: 27.7.2003 Где: город-герой Минск Репутация: 25 Всего: 232 |
имеются ввиду потоки ?... -------------------- ![]() |
|||
|
||||
| anna |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 10 Регистрация: 18.5.2004 Репутация: нет Всего: нет |
нет, именно процессы.
Они должны работать одновременно с одним файлом. Использую LockFile, но не помогает... Добавлено @ 16:09 Они должны записывать свою инфу в один файл одновременно. Чтобы друг на друга не натыкались, использую LockFile, а они, похоже, выжидают. |
|||
|
||||
| AndyY |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 316 Регистрация: 8.5.2004 Где: СПб Репутация: 2 Всего: 4 |
Предлагаю использовать проецируемый в память файл и мутекс (или евент).
другой вариант - открывать файл для записи и сразу закрывать, а в другом процессе - ждать, пока освободится. |
|||
|
||||
| shedon |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 1209 Регистрация: 17.1.2003 Где: Нижнiй Новгородъ Репутация: 4 Всего: 11 |
а как ты его открываешь, с share или нет
-------------------- Programming is like sex: One mistake and you have to support it your lifetime |
|||
|
||||
| Royan |
|
|||
|
Dreamer ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1708 Регистрация: 14.9.2002 Где: Лондон Репутация: нет Всего: 15 |
Так вроде для того фукнция и создана чтоб одновременно два процесса в него чего не понаписали, хотя если лочить определенную область тогда вроде и оба могут, а у Вас система случаем не Me/98/95? Там согласно руководству пользователя, третий параметр должен быть обязательно нуль
-------------------- Открыта вакансия Junior Java Developer'а в нашем лондонском офисе, подробнее можно узнать здесь |
|||
|
||||
| anna |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 10 Регистрация: 18.5.2004 Репутация: нет Всего: нет |
нужна ситуация, когда процесс натыкается на заблокированный участок файла. Он в этом случае ждет, а должен работать одновременно с другим процессом.
Добавлено @ 16:26 AndyY Мьютексы-то заче? |
|||
|
||||
| AndyY |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 316 Регистрация: 8.5.2004 Где: СПб Репутация: 2 Всего: 4 |
Возможно поможет держать таблицу залоченных участков, чтобы на них не натыкться.
Либо в том-же файле, либо в отдельном, либо в разделяемой памяти. А можно полюбопытствовать о природе задачи? Может и вовсе вынести операции записи в отдельный поток? Добавлено @ 16:30 anna мютексы - если файло проецируется в память. Чтобы разделять доступ к нему. |
|||
|
||||
| anna |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 10 Регистрация: 18.5.2004 Репутация: нет Всего: нет |
Такая задача:
Процессы выбирают случайный участок одного файла и записывают в него свою инфу. Они работают одновременно. НО: вместо того, чтобы натыкаться на залоченный участок и выдавать ошибку, они ждут, пока участок освободиться. |
|||
|
||||
| AndyY |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 316 Регистрация: 8.5.2004 Где: СПб Репутация: 2 Всего: 4 |
флаг LOCKFILE_FAIL_IMMEDIATELY не помогает?
тогда я пас. подобных функций не использовал. только менять технологию (не использовать LockFile) или формат файла. |
|||
|
||||
| anna |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 10 Регистрация: 18.5.2004 Репутация: нет Всего: нет |
Можно поподробние про флаг LOCKFILE_FAIL_IMMEDIATELY ?
Добавлено @ 16:57 |
|||
|
||||
| _hunter |
|
||||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 8564 Регистрация: 24.6.2003 Где: Europe::Ukraine:: Kiev Репутация: 16 Всего: 98 |
это флаг для
-------------------- Tempora mutantur, et nos mutamur in illis... |
||||
|
|||||
| anna |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 10 Регистрация: 18.5.2004 Репутация: нет Всего: нет |
Спасибо всем!!!
Оказалось, что процессы просто идут оченб быстро и я не успевала за ними следить. |
|||
|
||||
![]()
|
| Правила форума "С++:Общие вопросы" | |
|
|
Добро пожаловать!
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Earnest Daevaorn |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | C/C++: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |