Модераторы: Daevaorn
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> процессы 
:(
    Опции темы
anna
  Дата 18.5.2004, 15:45 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 10
Регистрация: 18.5.2004

Репутация: нет
Всего: нет



Помогите! Процессы не идут одновременно!!! sad.gif
PM MAIL   Вверх
mr.DUDA
Дата 18.5.2004, 15:52 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


3D-маньяк
****


Профиль
Группа: Экс. модератор
Сообщений: 8244
Регистрация: 27.7.2003
Где: город-герой Минск

Репутация: 25
Всего: 232



biggrin.gif
имеются ввиду потоки ?...


--------------------
user posted image
PM MAIL WWW   Вверх
anna
Дата 18.5.2004, 16:06 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 10
Регистрация: 18.5.2004

Репутация: нет
Всего: нет



нет, именно процессы.
Они должны работать одновременно с одним файлом. Использую LockFile, но не помогает...
Добавлено @ 16:09
Они должны записывать свою инфу в один файл одновременно. Чтобы друг на друга не натыкались, использую LockFile, а они, похоже, выжидают.
PM MAIL   Вверх
AndyY
Дата 18.5.2004, 16:15 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 316
Регистрация: 8.5.2004
Где: СПб

Репутация: 2
Всего: 4



Предлагаю использовать проецируемый в память файл и мутекс (или евент).
другой вариант - открывать файл для записи и сразу закрывать, а в другом процессе - ждать, пока освободится.


--------------------
PM MAIL WWW   Вверх
shedon
Дата 18.5.2004, 16:16 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Экс. модератор
Сообщений: 1209
Регистрация: 17.1.2003
Где: Нижнiй Новгородъ

Репутация: 4
Всего: 11



а как ты его открываешь, с share или нет


--------------------
Programming is like sex: One mistake and you have to support it your lifetime
PM MAIL WWW ICQ   Вверх
Royan
Дата 18.5.2004, 16:18 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Dreamer
***


Профиль
Группа: Участник Клуба
Сообщений: 1708
Регистрация: 14.9.2002
Где: Лондон

Репутация: нет
Всего: 15



Так вроде для того фукнция и создана чтоб одновременно два процесса в него чего не понаписали, хотя если лочить определенную область тогда вроде и оба могут, а у Вас система случаем не Me/98/95? Там согласно руководству пользователя, третий параметр должен быть обязательно нуль


--------------------
Открыта вакансия Junior Java Developer'а в нашем лондонском офисе, подробнее можно узнать здесь
PM MAIL MSN   Вверх
anna
Дата 18.5.2004, 16:23 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 10
Регистрация: 18.5.2004

Репутация: нет
Всего: нет



нужна ситуация, когда процесс натыкается на заблокированный участок файла. Он в этом случае ждет, а должен работать одновременно с другим процессом.
Добавлено @ 16:26
AndyY
Мьютексы-то заче?
PM MAIL   Вверх
AndyY
Дата 18.5.2004, 16:29 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 316
Регистрация: 8.5.2004
Где: СПб

Репутация: 2
Всего: 4



Возможно поможет держать таблицу залоченных участков, чтобы на них не натыкться.
Либо в том-же файле, либо в отдельном, либо в разделяемой памяти.

А можно полюбопытствовать о природе задачи?
Может и вовсе вынести операции записи в отдельный поток?
Добавлено @ 16:30
anna
мютексы - если файло проецируется в память. Чтобы разделять доступ к нему.



--------------------
PM MAIL WWW   Вверх
anna
Дата 18.5.2004, 16:37 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 10
Регистрация: 18.5.2004

Репутация: нет
Всего: нет



Такая задача:
Процессы выбирают случайный участок одного файла и записывают в него свою инфу. Они работают одновременно. НО: вместо того, чтобы натыкаться на залоченный участок и выдавать ошибку, они ждут, пока участок освободиться.
PM MAIL   Вверх
AndyY
Дата 18.5.2004, 16:45 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 316
Регистрация: 8.5.2004
Где: СПб

Репутация: 2
Всего: 4



флаг LOCKFILE_FAIL_IMMEDIATELY не помогает?
тогда я пас. подобных функций не использовал.
только менять технологию (не использовать LockFile) или формат файла.


--------------------
PM MAIL WWW   Вверх
anna
Дата 18.5.2004, 16:55 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 10
Регистрация: 18.5.2004

Репутация: нет
Всего: нет



Можно поподробние про флаг LOCKFILE_FAIL_IMMEDIATELY ?
Добавлено @ 16:57
adv/54.gif
PM MAIL   Вверх
_hunter
Дата 18.5.2004, 17:32 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Участник Клуба
Сообщений: 8564
Регистрация: 24.6.2003
Где: Europe::Ukraine:: Kiev

Репутация: 16
Всего: 98



это флаг для
Код
BOOL LockFileEx(
 HANDLE hFile,
 DWORD dwFlags,
 DWORD dwReserved,
 DWORD nNumberOfBytesToLockLow,
 DWORD nNumberOfBytesToLockHigh,
 LPOVERLAPPED lpOverlapped
);


Цитата
dwFlags
[in] This parameter may be one or more of the following values. Value Meaning
LOCKFILE_EXCLUSIVE_LOCK The function requests an exclusive lock. Otherwise, it requests a shared lock.
LOCKFILE_FAIL_IMMEDIATELY The function returns immediately if it is unable to acquire the requested lock. Otherwise, it waits.



--------------------
Tempora mutantur, et nos mutamur in illis...
PM ICQ   Вверх
anna
Дата 7.6.2004, 10:25 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 10
Регистрация: 18.5.2004

Репутация: нет
Всего: нет



Спасибо всем!!! smile.gif
Оказалось, что процессы просто идут оченб быстро и я не успевала за ними следить.
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "С++:Общие вопросы"
Earnest Daevaorn

Добро пожаловать!

  • Черновик стандарта C++ (за октябрь 2005) можно скачать с этого сайта. Прямая ссылка на файл черновика(4.4мб).
  • Черновик стандарта C (за сентябрь 2005) можно скачать с этого сайта. Прямая ссылка на файл черновика (3.4мб).
  • Прежде чем задать вопрос, прочтите это и/или это!
  • Здесь хранится весь мировой запас ссылок на документы, связанные с C++ :)
  • Не брезгуйте пользоваться тегами [code=cpp][/code].
  • Пожалуйста, не просите написать за вас программы в этом разделе - для этого существует "Центр Помощи".
  • C++ FAQ

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Earnest Daevaorn

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | C/C++: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0901 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.