Russian Qt Forum
Май 07, 2024, 03:54 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
 
  Начало   Форум  WIKI (Вики)FAQ Помощь Поиск Войти Регистрация  

Страниц: [1]   Вниз
  Печать  
Автор Тема: QFile эксклюзивный доступ  (Прочитано 8001 раз)
andrew.k
Гость
« : Февраль 16, 2011, 15:00 »

Как открыть файл на запись с эксклюзивным доступом, чтобы другой процесс не мог открыть этот же файл на запись одновременно?
Записан
GreatSnake
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 2921



Просмотр профиля
« Ответ #1 : Февраль 16, 2011, 15:02 »

какая платформа?
Записан

Qt 5.11/4.8.7 (X11/Win)
andrew.k
Гость
« Ответ #2 : Февраль 16, 2011, 15:14 »

да, забыл, сорри. линукс. кути 4.4
Записан
GreatSnake
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 2921



Просмотр профиля
« Ответ #3 : Февраль 16, 2011, 15:23 »

Цитировать
да, забыл, сорри. линукс. кути 4.4
unreal(
Записан

Qt 5.11/4.8.7 (X11/Win)
Пантер
Administrator
Джедай : наставник для всех
*****
Offline Offline

Сообщений: 5876


Жаждущий знаний


Просмотр профиля WWW
« Ответ #4 : Февраль 16, 2011, 16:33 »

Только платформозависимым способом. int QFile::handle () const и через апи выставляешь нужный уровень доступа.
Записан

1. Qt - Qt Development Frameworks; QT - QuickTime
2. Не используйте в исходниках символы кириллицы!!!
3. Пользуйтесь тегом code при оформлении сообщений.
andrew.k
Гость
« Ответ #5 : Февраль 16, 2011, 16:39 »

Только платформозависимым способом. int QFile::handle () const и через апи выставляешь нужный уровень доступа.
Ну это да. Жаль.
Записан
ax
Чайник
*
Offline Offline

Сообщений: 60


Просмотр профиля
« Ответ #6 : Февраль 16, 2011, 19:00 »

Locked File  
The QtLockedFile class extends QFile with advisory locking functions.

ftp://ftp.qt.nokia.com/qt/solutions/lgpl/qtlockedfile-2.4_1-opensource.tar.gz

PS. ftp url fixed
« Последнее редактирование: Февраль 17, 2011, 10:35 от ax » Записан
GreatSnake
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 2921



Просмотр профиля
« Ответ #7 : Февраль 16, 2011, 19:28 »

Цитировать
The QtLockedFile class extends QFile with advisory locking functions.
Поправь ссылку.
В unix-е можно делать только "лёгкие" локировки. Что QtLockedFile и делает:
Цитировать
    The file locks are advisory. This means that nothing prevents
    another process from manipulating a locked file using QFile or
    file system functions offered by the OS. Serialization is only
    guaranteed if all processes that access the file use
    QLockedFile. Also, while holding a lock on a file, a process
    must not open the same file again (through any API), or locks
    can be unexpectedly lost.
Хотя, может andrew.k этого будет вполне достаточно.
Записан

Qt 5.11/4.8.7 (X11/Win)
andrew.k
Гость
« Ответ #8 : Февраль 18, 2011, 12:32 »

да, этого вполне достаточно спасибо.
Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


Страница сгенерирована за 0.056 секунд. Запросов: 23.