когда ты в го разворачиваешь рутину, она помещается в локальную очередь одного из P контекстов. дальше когда один из M тредов заканчивает работу с этой рутиной, он пытается взять другую рутину из очереди, а если очередь пустая, то он случайным образом выбирает один из других Р контекстов и пытается украсть оттуда половину готовых для выполнения рутин