powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / Синхронизация доступа к одному файлу на сервере
5 сообщений из 5, страница 1 из 1
Синхронизация доступа к одному файлу на сервере
    #34056061
Аноним
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Здраствуйте,

помогите пожалуйста советом или решением, как реализовать следующее (ASP.NET 2.0):

На сервере лежит один файл, в который любой пользователь может добавить информацию. (Это НЕ скрипт гостевой книги). Мне надо сделать так, чтобы все работало красиво, чтобы была синхронизация действий пользователей. Потому что очень вероятны ситуации, когда одновременно большое количество пользователей будет его менять и сохранять.

Можно допустим делать так, если какой то пользователь запросил файл для изменения, можно ставить FileShare.None, но тогда что будет происходить с другими запросами? Они будут просто получать эксепшен что файл занят другим потоком? Мне надо как то реализовать это все так, чтобы когда файл занят, другие пользовательские запросы к этому файлу становились в очердь и ждали пока файл освободится.

Как это лучше сделать?

Спасибо.
...
Рейтинг: 0 / 0
Синхронизация доступа к одному файлу на сервере
    #34056537
Аноним
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Здравствуйте, Аноним, Вы писали:

А>Здраствуйте,

А>помогите пожалуйста советом или решением, как реализовать следующее (ASP.NET 2.0):

А>На сервере лежит один файл, в который любой пользователь может добавить информацию. (Это НЕ скрипт гостевой книги). Мне надо сделать так, чтобы все работало красиво, чтобы была синхронизация действий пользователей. Потому что очень вероятны ситуации, когда одновременно большое количество пользователей будет его менять и сохранять.

А>Можно допустим делать так, если какой то пользователь запросил файл для изменения, можно ставить FileShare.None, но тогда что будет происходить с другими запросами? Они будут просто получать эксепшен что файл занят другим потоком? Мне надо как то реализовать это все так, чтобы когда файл занят, другие пользовательские запросы к этому файлу становились в очердь и ждали пока файл освободится.

А>Как это лучше сделать?

А>Спасибо.


Хочу уточнить немного вопрос, допустим один пользователь запросил файл, выполняется код который открывает этот файл с FileShare.None, производится обновление данных в файле и файл сохраняется, после этого следующий пользователь может с ним работать. А что будет происходить пока файл занят кем-либо? Все остальные будут получать эксепшн и все? Или все остальные запросы к этому файлу будут становится в очередь и ждать?
...
Рейтинг: 0 / 0
Синхронизация доступа к одному файлу на сервере
    #34056597
Аноним
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А>Хочу уточнить немного вопрос, допустим один пользователь запросил файл, выполняется код который открывает этот файл с FileShare.None, производится обновление данных в файле и файл сохраняется, после этого следующий пользователь может с ним работать. А что будет происходить пока файл занят кем-либо? Все остальные будут получать эксепшн и все? Или все остальные запросы к этому файлу будут становится в очередь и ждать?

Да все остальные будут получать эксепшн. И не будут запросы ждать.

Видимо надо стучаться к тому фаилу через методы некоего класса-менеджера,
который и будет реализовывать логику того самого доступа.
А Вообще не принципиально — доступ к файлу из кода aspx-страницы или windows-приложения — логика некоего класса-менеджера таже.
...
Рейтинг: 0 / 0
Синхронизация доступа к одному файлу на сервере
    #34056606
mva
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
mva
Гость
1) ставишь FileShare.None
2) обращаешься к файлу (в зависимости от задачи в прямом или асинхронном доступе)
3) смотришь по классу эксепшена - если ошибка совместного доступа - повторяешь обращение некое кол-во раз
4) по истичении кол-ва попыток выдаешь пользователю мессагу, что файл занят, обратиться через минуту.
...
Рейтинг: 0 / 0
Синхронизация доступа к одному файлу на сервере
    #34056652
Dkm_S
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
>надо стучаться к тому фаилу через методы некоего класса-менеджера

Прогрессивное человечество давно наизобретало таких "менеджеров" - многопользовательскими базами данных назвали.--
Абыpвалг! - сказал Linux после pyсификации
...
Рейтинг: 0 / 0
5 сообщений из 5, страница 1 из 1
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / Синхронизация доступа к одному файлу на сервере
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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