LINUX.ORG.RU
Ответ на: комментарий от den73

Я уж не говорю о том, что исходник из рантайма, на к-рый ссылается то, что ты привёл, наверняка платформо-зависим.

den73 ★★★★★
() автор топика

На стековерфлоу мой вопрос заминусовали

Правильно сделали.

Что скажет ЛОР?

В бан.

anonymous
()

мой вопрос заминусовали, дебилы

Всё вокруг дебилы, одна я умница-красавица

deadplace
()

На стековерфлоу мой вопрос заминусовали, дебилы.

Тебя случайно не посещала мысль, что проблема может быть не в окружающих? :)

anonymous
()

И да и нет

потокобезопасной?

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

DukeNukem
()
Ответ на: комментарий от KillTheCat

Так это мой же вопрос. Ответа-то нет. То, что там в виде комментариев - это бред чистой воды.

den73 ★★★★★
() автор топика
Ответ на: И да и нет от DukeNukem

Экзит можно вызывать из любого потока

Все грибы съедобны, но некоторые только один раз.

Вот исходный текст

func Exit(code int) {
	if code == 0 {
		// Give race detector a chance to fail the program.
		// Racy programs do not have the right to finish successfully.
		runtime_beforeExit()
	}
	syscall.Exit(code)
}
Ладно, код у меня не равен нулю. Слава Богу, runtime_beforeExit() для моей задачи пропускаем. Дальше вопрос. syscall.Exit(code) потокобезопасен или нет? А он платформо-зависим. Вроде казалось бы, очевидно, что да. Но где это написано в документации? Вот что я нашёл также на SO:

https://stackoverflow.com/questions/12025640/how-can-i-know-whether-a-linux-s...

Это вопрос про Си. Ответ гласит: наверное да, но смотри доку. Окей, во-первых, рантайм голанга написан на асме и не факт, что он такой же, как на Си. Во-вторых, голанг работает не только под линуксом.

den73 ★★★★★
() автор топика
Последнее исправление: den73 (всего исправлений: 1)
Ответ на: комментарий от den73

Я рассчитывал вообще-то на ответ типа «все функции из модуля такого-то потокобезопасны». Но я искал это и не нашёл. Скорее всего, я по своему чайничеству просто пропустил нужное место где-то в иерархии доки, которую нужно было бы читать с начала и до конца.

Но поскольку такого ответа никто не дал, похоже, что мне придется делать os.Exit, защищаясь мьютексом.

den73 ★★★★★
() автор топика
Ответ на: комментарий от den73

похоже, что мне придется делать os.Exit, защищаясь мьютексом.

Защищаясь от чего? Хорош троллить, делом займись.

t184256 ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.