LINUX.ORG.RU

Ответ на: комментарий от tailgunner

Насколько я знаю, boost - сборник экспериментальных проектов, что-то вроде unstable-version. А из устаканенных библиотек что-нить есть на примете?

anonymous
()
Ответ на: комментарий от anonymous

> Насколько я знаю, boost - сборник экспериментальных проектов

o_O

> из устаканенных библиотек что-нить есть

ну, если тебе Boost.Threads не нравится, есть еще (как минимум) ACE, но она еще менее "стандартная".

tailgunner ★★★★★
()
Ответ на: комментарий от anonymous

> Если в GCC есть boost

в GCC его нет, но он есть на boost.org и в дистрах обычно есть соответствующие пакеты.

boost - The Boost C++ Libraries

boost-devel - The Boost C++ Headers

Это на FC

tailgunner ★★★★★
()
Ответ на: комментарий от anonymous

> А из того, что с Гыцыцом стандартно идёт нету синхронизаторов?

Нет, AFAIK

Ктулху зохавал мой моск :( Если тебе и в самом деле нужны средства _межпроцессной_ синхронизации (а не межнитевой), я даже и не знаю, что посоветовать.

tailgunner ★★★★★
()
Ответ на: комментарий от tailgunner

Я не Ктулха! (:-\ Разъясни поподробнее, пжалста, а то я не совсем ещё в теме: межпроцессная и межнитевая синхронизации различаются по исполнению сильно? Т. е. отдельно библиотека для межпроцессной, отдельно для межнитевой?

anonymous
()
Ответ на: комментарий от anonymous

> межпроцессная и межнитевая синхронизации различаются по исполнению сильно?

Не особо. В вызовы создания передаются другие аргументы, а использование практически одинаковое.

> отдельно библиотека для межпроцессной, отдельно для межнитевой?

Может быть по-разному. Но, поскольку я сам межпроцессную синхронизацию не использую, не могу сказать, как это принято в существующих библиотеках.

tailgunner ★★★★★
()
Ответ на: комментарий от tailgunner

П'нятненько ((ц) SouthPark). Спасибо за консультацию.

anonymous
()
Ответ на: комментарий от tailgunner

>> межпроцессная и межнитевая синхронизации различаются по исполнению сильно?

>Не особо. В вызовы создания передаются другие аргументы, а использование практически одинаковое.

Я бы сказал, что различия достаточно значительные. Частично идеологические, частично технические.

anonymous
()
Ответ на: комментарий от anonymous

> Я бы сказал, что различия достаточно значительные.

список значительных различий?

tailgunner ★★★★★
()
Ответ на: комментарий от anonymous

для 99.9% реально программирующих на С++ boost и есть стандартная библиотека.

>Нежелательно

принимая во внимание то, что boost::interprocess - header only библиотека, было бы интересно услышать причины нежелательности.

aydef
()
Ответ на: комментарий от anonymous

>Ну, то есть, чтобы НЕ скомпилировать было труднее, чем скомпилировать.

это всегда так. в чем проблема то?

aydef
()
Ответ на: комментарий от anonymous

>Насколько я знаю,

"низачиот" (C).

>boost - сборник экспериментальных проектов, что-то вроде unstable-version. А из устаканенных библиотек что-нить есть на примете?

бугога 10 раз.

aydef
()
Ответ на: комментарий от anonymous

>межпроцессная и межнитевая синхронизации различаются по исполнению сильно?

ессно. например объекты "межпроцессная" синхронизации сидят в ядре (в силу разных адресных пространств процессов) и идентифицируются с помощью разного рода хэндлов. опять же права там всякие, чтобы чужой семафор не опустил например левый процесс или какой нибудь "ктулха" (C) чего лишнего не "зохавал" (С). объекты "межнитевая синхронизации" лежат в пределах адресного пространства одного процесса (никаких дурацких прав) и доступны всем "нитям" напрямую. для "межнитевая синхронизации" вообще говоря не требуется даже никаких объектов синхронизации и вообще никаких системных вызовов (например lock free) что есть очень сильно быстрее.

читайте книжки.

aydef
()
Ответ на: комментарий от tailgunner

>что-то не нахожу такой на boost.org

oops... у меня cvs версия буста ...

aydef
()
Ответ на: комментарий от aydef

>>межпроцессная и межнитевая синхронизации различаются по исполнению сильно?

>ессно. например объекты "межпроцессная" синхронизации сидят в ядре

Это всё никому не нужные системно-зависимые детали реализации :) С точки зрения прикладной программы исполнение не различается - те же вызовы libc, а что они делают - какая разница? :)

tailgunner ★★★★★
()
Ответ на: комментарий от aydef

>читайте книжки.

От себя добавлю, что управление потоками также может быть реализовано как на уровне пользователя, так и на уровне ядра ОС.

anonymous
()
Ответ на: комментарий от Reset

>еще оно выходило в бумажном варианте по-русски

Бугага, у меня есть.. :Р Небольшая по объему, но крайне полезная книжечка. 8)

anonymous
()
Ответ на: комментарий от aydef

> принимая во внимание то, что boost::interprocess - header only библиотека, было бы интересно услышать причины нежелательности.

Кстати, насколько сильно у неё "уплыл" api от boost::shmem?

mv ★★★★★
()
Ответ на: комментарий от tailgunner

> что-то не нахожу такой на boost.org

Анонсы полугодичной-годичной давности почитай там. Раньше оно boost::shmem звалось.

mv ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.