Pull to refresh
35
0
Roman Gafiyatullin @RomkoGoofique

User

Send message
Да, умение достоверно знать будущее решило бы много проблем, и не только в вычислительной технике… :)
Новосконструированные значения занимают новое положение на куче. Куча у каждого процесса своя.

Периодически (при достижении fullsweep или при уходе в hibernate) срабатывает GC и проходится по всей куче, удаляя ненужные значения и уплотняя старые.

Факт того, что все структуры данных в Эрланге персистентные (иммутабельные, функциональные) позволяет заявлять, что ссылки в куче "направлены в одну сторону": благодаря этому можно чистить кучу в один проход.

Таким образом, в Эрланге есть stop-the-world, просто он у каждого процесса свой, и длится недолго :)
Обидно, наказывают, того, кто уже капнул сообщением. Тем самым предоставляя преимущество тем, кто только собирается усугубить положение процесса с переполненным мейлбоксом. :D

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

Если вы про sender punish, который вроде (к моему ужасу :( ) умолчально включен, то он не очень работает. В противном случае, при избыточном логгировании, система прекращала бы работать до того, как сожрет всю память очередью gen_event'а логгера.
Дорогие нити. В виртуальной машине Erlang поддерживается пул системных нитей, которые выполняют его процессы, при этом стандартнаяя библиотека позволяет блокировать процесс, переиспользую нить. В JVM в акторах выполнять блокирующие операции не рекомендуется, так как они блокируют и нить из пула. Это очень мешает программированию. Как это решается в Quasar я при беглом взгяде не понял.

В Akka акторы — это просто объекты со сравнимым с Эрланговым оверхедом (около 300 байт).

Шедулер ActorSystem'а Akka'и — это просто "реактор", который занимается разрешением фьючеров в готовые значения.
Немногим отличается от beam, который периодически дает процессорное время эрло-процессам. А процессы совершают редукции, пока не получат готовые значения.

Да, Akka'у можно повесить вызвав, что-нибудь блокирующее из сторонней библиотеки. Но и beam тоже не оценит, вызов долгоиграющего NIF'а.

И в том, и в другом случае, обязательно надо знать, что за функции вызываешь. Казалось бы, очевидно...

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

Ahem. Насколько мне известно, erlang:send/2 может заблокировать исключительно по причине большого размера сообщения или из-за того, что слать надо на другую ноду (отсюда и появился erlang:send_nosuspend/2).
Проблемы консумера, неуспевающего прожёвывать свою очередь, положено решать отказывая в обслуживании (см. https://github.com/ferd/pobox).
И какая из существующих VM успешно справилась с этим?

Речь, я полагаю, о блокирующих вызовах, укладывающих шедулер?
"Какие ваши доказательства?"

Не наезда ради для. Правда интересно.
Мне из минусов JVM кроме общей кучи (и как следствие stop-the-world) ничего в голову, просто, не приходит.
Разговор админа с духом очень напомнил кислотный трип Вавилена Татарского.
Не в упрек, просто наблюдение.
Если очень хочется посмотреть статью, кеш гугла помогает.
Каюсь, был невнимателен.
Удачи вам в расширении! :)
Точно, читая тоже хотел отметить, что на «Мае Сэнс» уж очень похоже.
1) Урок не мой. Я тут тоже мимо проходил.
2) Я всего лишь попытался помочь вам посмотреть на проблему с другого ракурса.
У вас, судя по всему, этого не вышло. Мне очень жаль. Могу попытаться донести до вас свою точку зрения ещё раз, если пожелаете.
3) «Клиент — вещь второстепенная и необязательная» — смею не согласиться. Пояснения могу предоставить на тех же условиях, что и к пункту #2.
Астролог один. Звезд — очень много.
Все гладко.
> Алкоголь является депрессантом. Подавляет нормальное мышление и замедляет его. Человек становится
> доверчивым и теряет различие между хорошо/плохо. Подавляется самокритика. Пьющие люди — лучшие
> объекты для манипулирования.

Псилоцибин является галлюциногеном. Как-то влияет на мышление и делает черт побери что с ощущением времени. Человек становится недоверчивым. Даже к самому себе: поэтому он теряет твердую веру в то, что такое хорошо/плохо. Зашкаливает самокритика. Трипующие люди — наименее предсказуемые объекты для манипулирования.

Психоделический опыт получать нужно только хорошо изучив матчасть и желательно в присутствии человека, которому доверяешь. Которому, кстати, желательно быть трезвым. Крайне важно, правильное настроение и обстановка.

А у нас же на пост-советском пространстве есть обычай — с горя нажраться. Я не готов жить в одном месте с такими людьми, если им выдадут галлюциногены. А вы?
Это великолепно!
romko.goofique@gmail.com, буду крайне благодарен.
Да тут не только на синтаксис посягнули… Какие нафик объекты в Эрланге? :\
Можно будет собирать «счастливые марки», типа сумма верхнего ряда и нижнего равна среднему…
Наверное, оно и логично: иначе по дереву супервизии прокатился бы брутал-килл и ничего не осталось бы.

Information

Rating
Does not participate
Location
Минск, Минская обл., Беларусь
Date of birth
Registered
Activity