Страницы

Поиск по вопросам

суббота, 23 марта 2019 г.

Многопоточность или многонитевость?

Недавно у меня возник любопытный вопрос лингвистического характера. Почему многонитевость называют многопоточностью?
В программировании есть два различных понятия stream и thread.
Первое обозначает объект для выполнения операций (чаще всего передача данных или их накопление), второе же обозначает объект, который позволяет выполнить некий программный код параллельно с другими ветками кода.
Первое слово переводится на русский язык как поток - тут всё логично, их так все и называют. Второе же слово переводится как нить.
Так почему в различного рода литературе и других медиа источниках это слово упорно переводят, как поток? Более того, в русском языке прочно закрепился термин многопоточность, который является аналогом (но никак не переводом) слова multithreading? Чем же можно объяснить столь любопытное явление? Или всё таки есть разница между многопоточностью и многонитевостью? А если есть разница, то какой в английском языке существует аналог термину многонитевость?


Ответ

Поток = нить (если мы говорим про "потоки" (Thread), а не потоки (Stream)). А про подмену понятия, можно почитать в Вики Перевод английского термина thread как «поток» в контексте, связанном с программированием, противоречит его же переводу «нить» в общеязыковом контексте, а также создает коллизии с термином stream («поток»). Однако, термин «поток» связан с переводами иностранной технической литературы, выполненными в 1970-х годах издательством «Мир». В настоящее время в «академических кругах» (то есть в учебниках, методических пособиях, курсах вузов, диссертациях и пр.) он считается эталонным. Термины же «нить», «тред» и т. п. считаются техническими жаргонизмами.

Комментариев нет:

Отправить комментарий