Size: a a a

2020 October 28

MA

Mons Anderson in Tarantool
Anatoliy Shipitcyn
Чтобы я мог отдельный процесс просто файбером запустить дать ему что-то считать а потом отдать результат
используйте popen, в чём проблема?
источник

AS

Anatoliy Shipitcyn in Tarantool
А он ЗАРАБОТАЛ как надо?
источник

MP

Mike Po in Tarantool
Mons Anderson
N потоков с кооперацией без разделяемой памяти — это просто забрать на себя кусочек оркестрации
которая всё равно неизбежна.

N потоков с разделяемой памятью — это уже не кооперативно
да, первый вариант, но можно и гибрид. Типа если есть чтение не критичное к уровням изоляции можно было бы и пошарить чуть данные )
источник

OK

Oleg Koshovetc in Tarantool
Mons Anderson
переход к кооперативной у него только при GOMAXPROC=1
Даже при этом вроде остается вытесняющая многозадачность
источник

AS

Anatoliy Shipitcyn in Tarantool
В прошлый раз когда я спрашивал мне сказали используйте exec и даже сказали где посмотреть
источник

AK

Alexey Kuzin in Tarantool
Anatoliy Shipitcyn
В прошлый раз когда я спрашивал мне сказали используйте exec и даже сказали где посмотреть
Видимо не было ещё popen
источник

AS

Anatoliy Shipitcyn in Tarantool
был
источник

MA

Mons Anderson in Tarantool
Mike Po
да, первый вариант, но можно и гибрид. Типа если есть чтение не критичное к уровням изоляции можно было бы и пошарить чуть данные )
Ну вот начинается :)
источник

MA

Mons Anderson in Tarantool
Oleg Koshovetc
Даже при этом вроде остается вытесняющая многозадачность
при одном треде не может быть вытесняющей
источник

MP

Mike Po in Tarantool
Mons Anderson
Ну вот начинается :)
) особенно с MVCC чтение при определенных условиях можно было бы и распараллелить )
источник

AK

Alexey Kuzin in Tarantool
Неблокирующий popen появился в 2.4. Вам видимо стоит перейти на него
источник

OK

Oleg Koshovetc in Tarantool
Mons Anderson
при одном треде не может быть вытесняющей
Переключение горутин там  все равно принудительное  же, или я туплю?
источник

AN

Artem Nazarenko in Tarantool
Многопоточности может не хватать для логики распараллеливания или для работы с несколькими IO процессами. Если нужна параллельная или конкурентная многозадачность для какого-то функционала, то можно вынести этот функционал в другой сервис на другом языке. Вообще я стараюсь в тарантуле оставлять только функции data layer, остальное выносить в другие сервисы... Тогда много инстансов имеет смысл поднимать только для фич распределенного хранения, а это уже не создает проблемы "много инстансов на одной машине". При этом подходе проще заменить tnt на другую СУБД при необходимости
источник

AS

Anatoliy Shipitcyn in Tarantool
Alexey Kuzin
Неблокирующий popen появился в 2.4. Вам видимо стоит перейти на него
ну т.е. я там могу вызвать exec чето что долго работает и и ждать когда оно там завершится?
источник

AS

Anatoliy Shipitcyn in Tarantool
В прошлый раз говорили что лочит и показывали что ой
источник

MA

Mons Anderson in Tarantool
то, что у тебя на некоторых операциях есть принудительное переключение не меняет сути.
параллельно не работает больше одной горутины
источник

AK

Alexey Kuzin in Tarantool
Anatoliy Shipitcyn
ну т.е. я там могу вызвать exec чето что долго работает и и ждать когда оно там завершится?
источник

AK

Alexey Kuzin in Tarantool
Посмотрите доку и примеры
источник

AS

Anatoliy Shipitcyn in Tarantool
Ну значит починили
источник

AK

Alexey Kuzin in Tarantool
Anatoliy Shipitcyn
В прошлый раз говорили что лочит и показывали что ой
Да, до 2.4 нельзя было запустить асинхронно
источник