«Go - это параллельный язык». - PullRequest
3 голосов
/ 12 февраля 2011

Go is a concurrent lang Что это значит?

не означает ли это, что это альтернатива C / C ++ / Java ..? 1004 *

Ответы [ 3 ]

7 голосов
/ 12 февраля 2011

A параллельный язык - это язык, в котором есть языковые конструкции для параллелизма.

Go - это параллельный язык , поскольку в нем есть "goroutines".

Concurrency

Go предоставляет горутины, небольшие легкие нити;имя намекает на сопрограммы.Для создания подпрограмм используются операторы go из анонимных или именованных функций.

Подпрограммы выполняются параллельно с другими подпрограммами, включая вызывающих их.Они не обязательно выполняются в отдельных потоках, но группа подпрограмм мультиплексируется в несколько потоков - управление выполнением перемещается между ними, блокируя их при отправке или получении сообщений по каналам.

4 голосов
/ 12 февраля 2011

Это означает, что это язык с функциями, подходящими для параллельного (параллельного, многопоточного и т. Д.) Программирования.Он имеет специальные конструкции языка для поддержки этого типа программирования.Параллельное программирование может выполняться на других языках (C / C ++, Java и т. Д.), Но это (возможно) будет сложнее и, вероятно, приведет к большему количеству ошибок в программах.

1 голос
/ 12 февраля 2011

Вот некоторые ресурсы по параллельному программированию от некоторых основных авторов языка программирования Go.

Введение в параллельное программирование

Ресурсы по многопоточностипрограммирование в стиле Bell Labs CSP

...