потому что нифки — не эрланг-процессы, потому на них не распространяются эти удобности. На нифки действуют правила сишного кода: одна ошибка — и ты ошибся и весь юникс-процесс разломан
Это понятно, но почему ломается BEAM? Пусть в отдельных процессах работает, и если упал, супервизор перезапустит.
боюсь, в отдельном процессе это будет не так быстро. Даже если данные не копировать (за счёт шаренной памяти), будет потеря времени на переключении контекста (и именно за счёт откзаза от переключений контекста виртуальная машина хоть сколь-нибудь работает с тысячами и миллионами процессов). Плюс дополнительные трудности с данными, которые аллоцирует нифка (какой аллокатор их будет обслуживать и как их не потерять при рестарте процесса?)
Потому что нифка загружается как ddl иначе это медленно
Это вы сейчас порты описали, которые и есть отдельные процессы.
Обсуждают сегодня