Size: a a a

2020 January 11

P

Pavel in rust_offtopic
Victor Sapiens
Я хз как в JAVA в Шарпах это Стейт машина с набором колбеков которые выполняются на пуле потоков шедудером в зависимости от состояния этой стейт машины. Короче, M:N параллелизм. У тебя может быть 1 системный поток и 1000 зелёных Task которые его по очереди используют.
ну, похожее есть, только без поддержки в синтаксисе
источник

P

Pavel in rust_offtopic
не такое, но селекторы работают по такому принципу, например, а тасочки вычислительные на чуть другом
источник

P

Pavel in rust_offtopic
тоесть такая модель в IO используется
источник

P

Pavel in rust_offtopic
но неявного саспенда-продолжения нет
источник

VS

Victor Sapiens in rust_offtopic
Pavel
ну и в джаве (как языке) не может быть примитивов ядра, потому, что она допускает работу без ядра, потому там все примитивы местные
Ну на самом деле от этого есть некоторые возможности стрельнуть себе в ногу. Например у нас если именованный семафор не освободить то он может залочить намертво все инстансы этого приложения на машине.
источник

VS

Victor Sapiens in rust_offtopic
Тобишь даже если убьешь сервис а потом новый инстанс запустишь он так и будет локнутый стоять.
источник

AZ

Alex Zhukovsky in rust_offtopic
Victor Sapiens
Я хз как в JAVA в Шарпах это Стейт машина с набором колбеков которые выполняются на пуле потоков шедудером в зависимости от состояния этой стейт машины. Короче, M:N параллелизм. У тебя может быть 1 системный поток и 1000 зелёных Task которые его по очереди используют.
Асинк авейт к модели гринтредов не имеет отношения
источник

VS

Victor Sapiens in rust_offtopic
Pavel
и порядок операций внутри одного метода соблюдается
Ну в C# для этого кроме Волатильных переменных есть ещё Мемори Барьер. Им можно явно границы указать.
источник

AZ

Alex Zhukovsky in rust_offtopic
Собственно tpl в 4.0 появился, а авейты в 4.5
источник

VS

Victor Sapiens in rust_offtopic
Alex Zhukovsky
Асинк авейт к модели гринтредов не имеет отношения
И что? Я говорил что у нас и гринтреды и ансихронность есть. То что это разные вещи я и без тебя знаю.
источник

AZ

Alex Zhukovsky in rust_offtopic
Victor Sapiens
И что? Я говорил что у нас и гринтреды и ансихронность есть. То что это разные вещи я и без тебя знаю.
У нас нет гринтредов в том смысле что обычно понимается
источник

AZ

Alex Zhukovsky in rust_offtopic
Не все что m n гринтреды
источник

VS

Victor Sapiens in rust_offtopic
Alex Zhukovsky
У нас нет гринтредов в том смысле что обычно понимается
Хм, в каком их смысле обычно понимают? Я слышал что обычно это те которые не треды ОС а легковесные абстракции
источник

AZ

Alex Zhukovsky in rust_offtopic
Victor Sapiens
Хм, в каком их смысле обычно понимают? Я слышал что обычно это те которые не треды ОС а легковесные абстракции
Ещё кооперативность важна
источник

VS

Victor Sapiens in rust_offtopic
Alex Zhukovsky
Ещё кооперативность важна
Так, стоп - а шедудер чем тогда занимается?
источник

VS

Victor Sapiens in rust_offtopic
Что ты имеешь в виду под кооперативностью?
источник

AZ

Alex Zhukovsky in rust_offtopic
Victor Sapiens
Так, стоп - а шедудер чем тогда занимается?
В го нет такого шедулера
источник

AZ

Alex Zhukovsky in rust_offtopic
Корутины сами отдают управление
источник

AZ

Alex Zhukovsky in rust_offtopic
А если не отдают то все виснет
источник

AZ

Alex Zhukovsky in rust_offtopic
Спроси у гошников
источник