[Moscow.pm] Стиль асинхронного программирования
Eugene Toropov
eugene.toropov на gmail.com
Вт Дек 31 04:04:51 PST 2013
Хотя правильнее называть не контекст, а процессор, там и буква P на рисунках стоит от Processor.
On Dec 31, 2013, at 3:59 PM, Eugene Toropov <eugene.toropov на gmail.com> wrote:
>
>
>>
>>> В текущей реализации говоришь интерпретатору, сколько потоков
>>> хочешь, и он делает. Дальнейшая работа по параллелизации сопрограмм
>>> происходит практически прозрачно для программиста.
>>
>> Так я и спрашиваю, как именно оно переносит сопрограмму с одного ядра
>> на другой?
>
> http://morsmachine.dk/go-scheduler - доступно и с картинками :)
>
> Технически гоурутины стоят в очередях на контексты (которых не больше GOMAXPROC), выполняемые в системных тредах (1 контекст - 1 тред). Если треду надо локнуться - он отдает контекст с его очередью другому треду (взятому из кэша или вновь созданному, если кэш пуст) - про это читать в "Who you gonna (sys)call?" по ссылке выше
>
> Евгений
----------- следущая часть -----------
Вложение в формате HTML было извлечено…
URL: <http://mail.pm.org/pipermail/moscow-pm/attachments/20131231/0f4ef651/attachment.html>
Подробная информация о списке рассылки Moscow-pm