OberonCore
https://forum.oberoncore.ru/

Один поток или много?
https://forum.oberoncore.ru/viewtopic.php?f=31&t=4475
Страница 2 из 2

Автор:  Илья Ермаков [ Вторник, 03 Сентябрь, 2013 07:19 ]
Заголовок сообщения:  Re: Один поток или много?

Да как угодно управлять можно... уже под частную задачу.

Можно иметь базовую библиотеку, которая позволяет создать и потом открыть по имени такой буфер в разных рантаймах, получив к нему интерфейс типа Files.File. Так становится удобно и прокачивать сообщения структурированные, как хранимые объекта типа Stores.Store.

Автор:  Alexey Veselovsky [ Вторник, 03 Сентябрь, 2013 07:25 ]
Заголовок сообщения:  Re: Один поток или много?

Илья Ермаков писал(а):
Да как угодно управлять можно... уже под частную задачу.

Можно иметь базовую библиотеку, которая позволяет создать и потом открыть по имени такой буфер в разных рантаймах, получив к нему интерфейс типа Files.File. Так становится удобно и прокачивать сообщения структурированные, как хранимые объекта типа Stores.Store.

Ну, там еще вопрос в синхронизации и в сигнализировании, что вот новый шмат готов и можно читать. Но это действительно уже детали.

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

Автор:  Илья Ермаков [ Вторник, 03 Сентябрь, 2013 08:14 ]
Заголовок сообщения:  Re: Один поток или много?

Для ББ вопрос запуска ещё одного рантайма ~ 2МБ.
Ну плюс дублирование своего кода, каких-то своих данных и прочего хозяйства...
Всё равно мелочи )

Автор:  Info21 [ Вторник, 03 Сентябрь, 2013 09:58 ]
Заголовок сообщения:  Re: Один поток или много?

Илья Ермаков писал(а):
Для ББ вопрос запуска ещё одного рантайма ~ 2МБ.
Разве 2МБ? не меньше?

Автор:  Илья Ермаков [ Вторник, 03 Сентябрь, 2013 10:21 ]
Заголовок сообщения:  Re: Один поток или много?

Возможно, и меньше... Я не о голом Kernel говорю, а о некоторой стандартной группе модулей... В любом случае, даже для 32-ядерного сервера вопрос мелочный ))

Автор:  Alexey Veselovsky [ Вторник, 03 Сентябрь, 2013 10:48 ]
Заголовок сообщения:  Re: Один поток или много?

Илья Ермаков писал(а):
Возможно, и меньше... Я не о голом Kernel говорю, а о некоторой стандартной группе модулей... В любом случае, даже для 32-ядерного сервера вопрос мелочный ))

Ну, я же говорю - стоимость такого потока+рантайм примерно равен запуску еще одного процесса в системе. Другое дело, что общение между этими потокорантаймами происходить будет с меньшими накладными расходами нежели общение между процессами. Описанную мною задачу это вполне решает.

Автор:  prospero78 [ Вторник, 25 Август, 2015 07:43 ]
Заголовок сообщения:  Re: Один поток или много?

Расскажите люди добрые: как запихнуть два ядра ББ в один процесс, и как они взаимодействовать будут? Указатели на процедуры? Общая память лютых размеров? Сокеты?
Почему-то никто не сказал, что можно пользовать именованные каналы-очереди. Один поток пишет(только один, много), второй поток читает (только один). По-моему это близко к полному феншую)

Автор:  Пётр Кушнир [ Вторник, 25 Август, 2015 13:01 ]
Заголовок сообщения:  Re: Один поток или много?

Вот так https://bitbucket.org/petryxa/mbp

Страница 2 из 2 Часовой пояс: UTC + 3 часа
Powered by phpBB® Forum Software © phpBB Group
https://www.phpbb.com/