Можно ли обнаружить, сколько потоков данное количество goroutines создаст?

С версии 2012.1, По необходимости поддержки P4IGNORE переменная среды. Я обновил свой ответ на этот вопрос об игнорировании каталогов с объяснением того, как это работает. Тогда я заметил этот ответ, который является теперь лишним, я предполагаю.

Принятие у Вас есть клиент под названием "КЛИЕНТ", каталог, названный "нечто" (расположенный в Вашем корне проекта), и Вы хотите проигнорировать все .dll файлы в том дереве каталогов, можно добавить следующие строки к представлению рабочей области для выполнения этого:

-//depot/foo/*.dll //CLIENT/foo/*.dll
-//depot/foo/.../*.dll //CLIENT/foo/.../*.dll

первая строка удаляет их из каталога "нечто", и вторая строка удаляет их из всех подкаталогов. Теперь 'При согласовании Офлайновой Работы...', все .dll файлы будут перемещены в папки "Excluded Files" у основания дисплея разности папки. Они будут вне Вашего пути, но могут все еще просмотреть и управлять ими, если Вы действительно должны будете.

можно также сделать это иначе, который уменьшит папку "Excluded Files" всего до один, но Вы не будете в состоянии управлять любым из файлов, которые это содержит, потому что путь будет поврежден (но если Вы просто хотите их из своего пути, это не имеет значения).

-//depot/foo.../*.dll //CLIENT/foo.../*.dll

8
задан Sridhar 2 September 2016 в 13:39
поделиться

2 ответа

Согласно слайдам в формате PDF от Pike's Go Course (День 3):

... если вы хотите параллелизм на уровне пользователя, вы должны установить $ GOMAXPROCS или позвонить по телефону runtime.GOMAXPROCS (n) . GOMAXPROCS сообщает планировщику времени выполнения, сколько горутин, не заблокированных системным вызовом, запускать одновременно.

На основании этого сообщения в блоге , похоже, также устанавливается переменная среды ] GOMAXPROCS позволяет вам фиксировать количество потоков. Однако я не уверен, как получить количество потоков по умолчанию, которым будет управлять среда выполнения, если вы не укажете это значение.

Это сообщение в блоге , похоже, подразумевает, что если вы не установите переменную среды, среда выполнения будет использовать только одно ядро ​​(предположительно, потому что оно использует только один процесс).

7
ответ дан 5 December 2019 в 09:26
поделиться

В настоящее время gccgo создает по одному потоку для каждой горутины.

Я не знаю насчет 6g.

3
ответ дан 5 December 2019 в 09:26
поделиться
Другие вопросы по тегам:

Похожие вопросы: