[Ruby] межпроцесснаясинхронизация данных.

vic ismakaev viclists at mail.esoo.ru
Thu May 8 13:33:02 MSD 2003


8 Май 2003 15:14, Eugene Scripnik написал:
> vic ismakaev wrote:
> > 8 Май 2003 14:17, Vladimir Shahov написал:
> >>On Thu, May 08, 2003 at 01:56:32PM +0600, vic ismakaev wrote:
> >>>Соответственно вопрос: каким путем надо идти,что бы этот хэш был
> >>> доступен из разных серверных процессов.
> >>
> >>Достаточно простой способ - использовать потоки (Threads) вместо
> >>процессов (Process)
> >>тогда данные будут общими для всех потоков выполнения
> >>синхронизация - через Mutex
> >>
> >>PS: попробуй внимательно почитать Progamming Ruby. Там эти вопросы
> >>освещены достаточно подробно
> >
> > Через потоки и Mutex - да,можно.
> > Но я не хочу делать сервер многопоточным. Может быть потом,когда буду
> > писать его с нуля.
> > А сейчас хотелось бы просто добавить к той реализации сервера,который у
> > меня есть добавить что-нибудь типа shared-memory или персистент объект.
>
> тогда разделяемая память с семафорами
> смотри в сторону ruby-sysvipc:
> http://raa.ruby-lang.org/list.rhtml?name=sysvipc
> Там можно устраивать несколько видов межпроцессного взаимодействия.
> Насколько я помню в библиотеке есть примеры.
Как раз сейчас смотрю на нее .Только ее статус смущает - 0.0.3 expiremental.

А в принципе мою задачу можно решить не прибегая к третим либам,тредам или 
файлам.?
-- 
С уважением
Виктор В Исмакаев



More information about the Ruby mailing list