Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  

Показать сообщение отдельно
mar mar вне форума

Аватара для mar

just mar


Moderator


Сообщения: 3904
Благодарности: 163

Профиль | Отправить PM | Цитировать


Цитата:
Преимущества CGI для одновременного конекта N
- нет, конечно. Никакого преимущества тут нет и быть не может. Просто технология CGI более старая, чем технология PHP/ASP и, соответственно, есть люди, которые к ней привыкли, а есть наработанные скрипты (зачем же от них отказываться). А с файлами никто лучше, или хуже не работает. Единственное, что в случае применения Perl/cgi можно, например, задействовать не-вебсерверный кусок файловой стуктуры (если адми туда пускает, чего на хостингах, чаще всего, не бывает).

Что касается блокировки фалов, на каком языке блокировать-то ? (Или просто блокировать внешними средствами OS?) можно тз поподробней ?

На всякий случай отпишу про Perl (как про наиболее часто употребляемый язык). Есть там такая встроенная функция flock. Она блокирует доступ к файлу, пока в него вносятся изменения.
Код: Выделить весь код
flock(дескриптор_файла, код_блокировки), 
где код_блокировки:
 *1 - для разделяемого доступа (совместная блокировка)
 *2 - для монопольного доступа (монопольная блокировка)
 *4 - асинхронная блокировка (функция flock не ожидает активизации блокировки)
 *8 - снятие блокировки
НО:
Цитата:
Функция flock в Perl'е реализует так называемую "мягкую болкировку", блокируя другие вызовы flock, а не сами процессы. Проще говоря, это не означает, что остальные программы не смогут использовать заблокированный файл, просто они не смогут получить от функции flock значение "истина".
В переводе, если процесс, обращаясь к файлу, не использует проверку блокировки, то может получиться ерунда Но в твоем случае, можно просто аккуратно следить за собственным кодом
Возможный вариант: кроме flock поступать, как pop3d *в *nix:
когда ты забираешь письмо с сервера, там создается копия файла твоего почтового ящика с точкой в начале имени (например: .fade) Это признак для программы, что ящик занят.
зы под виндами flock, по-моему просто не работает, тк, судя по всему, является надстройкой над системными функциями


[s]Исправлено: mar, 15:27 27-06-2004[/s]

Отправлено: 15:25, 27-06-2004 | #2