Bonjour tout le monde avec toutes les fonctionnalités du langage Go

Je quitterai le monde Hello, qui était précédemment tweeté avec toutes les fonctionnalités du langage Go, sous forme d'article Qiita.

Il implémente simplement le simple objectif d'afficher "Hello # number world" de 0 à 99 en parallèle avec goroutine. Cependant, il est intéressant car il nécessite du code qui entre au centre du langage Go de manière inattendue.

Si vous n'utilisez pas le canal, il se terminera au milieu, et si vous ne passez pas correctement l'argument à goroutine, les nombres se chevaucheront. En fait, quand j'ai tweeté, je n'ai pas traité de ces choses, alors j'ai essayé de le faire sérieusement pour en faire un article cette fois, et j'ai remarqué que cela se terminait au milieu ou étrange. Lol

La source

package main

import "fmt"

func main() {
	max := 100
	quit := make(chan bool, max)
    for i := 0; i < max; i++ {
        go func(j int) {
			fmt.Printf("hello, #%v world\n", j)
			quit <- true
		}(i)
	}
	for i := 0; i < max; i++ {
		<- quit
	}
}

Résultat d'exécution

Hello, #4 world
hello, #0 world
hello, #1 world
hello, #14 world
hello, #16 world
hello, #15 world
hello, #20 world
hello, #9 world
hello, #5 world
hello, #3 world
hello, #6 world
hello, #17 world
hello, #21 world
hello, #18 world
hello, #12 world
hello, #7 world
hello, #11 world
hello, #10 world
hello, #23 world
hello, #19 world
hello, #2 world
hello, #22 world
hello, #24 world
hello, #8 world
hello, #25 world
hello, #63 world
hello, #27 world
hello, #59 world
hello, #28 world
hello, #60 world
hello, #66 world
hello, #99 world
hello, #67 world
hello, #62 world
hello, #68 world
hello, #44 world
hello, #85 world
hello, #87 world
hello, #58 world
hello, #33 world
hello, #72 world
hello, #39 world
hello, #45 world
hello, #41 world
hello, #74 world
hello, #90 world
hello, #36 world
hello, #46 world
hello, #91 world
hello, #47 world
hello, #26 world
hello, #55 world
hello, #71 world
hello, #97 world
hello, #57 world
hello, #75 world
hello, #76 world
hello, #37 world
hello, #92 world
hello, #43 world
hello, #13 world
hello, #61 world
hello, #65 world
hello, #32 world
hello, #38 world
hello, #31 world
hello, #54 world
hello, #98 world
hello, #48 world
hello, #94 world
hello, #49 world
hello, #77 world
hello, #95 world
hello, #89 world
hello, #93 world
hello, #51 world
hello, #56 world
hello, #70 world
hello, #88 world
hello, #73 world
hello, #34 world
hello, #35 world
hello, #52 world
hello, #42 world
hello, #79 world
hello, #82 world
hello, #53 world
hello, #64 world
hello, #83 world
hello, #78 world
hello, #96 world
hello, #80 world
hello, #86 world
hello, #30 world
hello, #40 world
hello, #29 world
hello, #69 world
hello, #84 world
hello, #81 world
hello, #50 world

Recommended Posts

Bonjour tout le monde avec toutes les fonctionnalités du langage Go
Caractéristiques du langage Go
Hello World en langue GO
Hello World avec gRPC / go dans l'environnement Docker
bonjour le monde avec ctypes
Bonjour le monde avec Docker
Bonjour le monde sur flacon
Dessinez bonjour le monde avec mod_wsgi
Bonjour le monde avec Flask + Hamlish
Recherche de bits complète avec Go
Jusqu'à bonjour le monde avec zappa
Python commençant par Hello world!
Bonjour tout le monde! Avec la communication CAN virtuelle
[Note] Sortie Hello world avec python
10 fonctions du "langage avec batterie" python
Hello World! Par QPython avec Braincrash
Hello World et détection de visage avec opencv-python 4.2
Bonjour le monde avec Raspberry Pi + Minecraft Pi Edition
Résumé de l'extrait de code lors du développement avec Go
Bonjour le monde
Bonjour tout le monde pas localhost à Django
Hello World! Par QPython avec Brainfu * k
J'ai essayé Hello World avec un langage OS + C 64 bits sans utiliser de bibliothèque
J'ai eu une erreur en essayant d'exécuter Hello World en langue Go
Hello World et détection de visage avec OpenCV 4.3 + Python
Tweetez régulièrement avec l'API Twitter Go language
Dites bonjour au monde avec Python avec IntelliJ
Hello World avec nginx + uwsgi + python sur EC2
100 traitement du langage knock-75 (en utilisant scicit-learn): poids de l'identité
Créez une application Hello World avec un seul fichier avec django
Premier python ① Construction de l'environnement avec pythonbrew & Hello World !!
Créer un serveur "Hello World" (HTTP) dans Tornado
Python avec Go
Pymacs helloworld
cython helloworld
J'ai essayé d'extraire des fonctionnalités avec SIFT d'OpenCV
[Apprentissage de la programmation] Comparaison logique par langue part.1 ("Hello World")
Étude depuis le début de Python Hour1: Hello World
[Chapitre 5] Introduction à Python avec 100 coups de traitement du langage
[Chapitre 6] Introduction à scicit-learn avec 100 coups de traitement du langage
Un expert Ruby a appris la grammaire de base du langage Go
[Chapitre 3] Introduction à Python avec 100 coups de traitement du langage
[Chapitre 2] Introduction à Python avec 100 coups de traitement du langage
Apprenez facilement 100 traitements linguistiques Knock 2020 avec "Google Colaboratory"
Prédisons les survivants du Hello World de Kaggle, Titanic par régression logistique-Modélisation-
[Chapitre 4] Introduction à Python avec 100 coups de traitement du langage