goroutine

Eine goroutine ist ein einfacher Ausführungsstrang, der von der Go Language Runtime verwaltet wird.
1
Antwort

Gehen Sie Parallelität und Kanal Verwirrung

Ich bin neu in Go und habe ein Problem, die Nebenläufigkeit und den Kanal zu verstehen. %Vor% Die Ausgabe des Programms lautet: %Vor% Aber ich dachte, es sollte nur eine Zeile sein: %Vor% In der Hauptfunktion blockiert & lt; -c dies...
22.08.2013, 21:07
1
Antwort

Welche von Koroutinen (Goroutines und Kotlin Coroutinen) sind schneller? [geschlossen]

Kotlin corutines ist Zucker für endliche Zustandsmaschine und einige Aufgabenläufer (zum Beispiel Standard ForkJoinPool). Ссылка Mit anderen Worten, es gibt noch keine Laufzeit-Korutinen in der Java / Kotlin-Laufzeitumgebung (dies kann sich...
21.10.2017, 15:01
3
Antworten

Golong Nebenläufigkeit: Wie man an die gleiche Scheibe von verschiedenen goroutines anfügt

Ich habe gleichzeitige goroutines, die eine (Zeiger zu a) Struktur an die gleiche Scheibe anhängen möchten. Wie schreibt man das in Go, um es nebenläufigkeitssicher zu machen? Dies wäre mein Nebenläufigkeits-unsicherer Code, der eine Wartegru...
28.08.2013, 22:30
3
Antworten

Wie finde ich heraus, ob eine Goroutine fertig ist, ohne zu blocken?

Alle Beispiele, die ich bisher gesehen habe, beinhalten das Blockieren des Ergebnisses (über den Operator <-chan ). Mein aktueller Ansatz beinhaltet die Übergabe eines Zeigers an eine Struktur: %Vor% welches die Goroutine nach Beendi...
13.11.2009, 17:24
2
Antworten

Simple goroutine funktioniert nicht unter Windows

Ich mache ein paar Tests mit Goroutinen, nur um zu lernen, wie sie funktionieren, aber es scheint, dass sie überhaupt nicht laufen. Ich habe einen sehr einfachen Test gemacht: %Vor% Ich würde erwarten, dass dies "Test" druckt, aber es tut ei...
02.02.2013, 17:35
2
Antworten

Idiomatischer Workerpool variabler Größe in Go

Ich versuche einen Pool von Arbeitern in Go zu implementieren. Der go-wiki (und der Effektive Go-Kanal im Abschnitt "Channels") bieten hervorragende Beispiele für die Verwendung von Ressourcen . Erstellen Sie einfach einen Kanal mit einem Puff...
23.05.2014, 19:49
2
Antworten

OK, um das Programm mit der aktiven Goroutine zu beenden?

Nehmen Sie das folgende Code-Snippet: %Vor% Die goroutine sollte für die Dauer der Ausführung laufen. Wenn die Select-Anweisung etwas vom Beendigungskanal empfängt, bricht sie die Schleife ab und das Programm endet, ohne dass versucht wird,...
27.08.2014, 03:34
2
Antworten

Golang context.WithValue: wie mehrere Schlüssel / Wert-Paare hinzugefügt werden

Mit Gos context -Paket ist es möglich, anforderungsspezifische Daten mit an den Stapel von Anforderungshandhabungsfunktionen zu übergeben %Vor% Dies erstellt ein neues Context , das eine Kopie des Elternteils ist und den Wert val enthäl...
02.11.2016, 12:28
3
Antworten

Kannst du erkennen, wie viele Threads eine bestimmte Anzahl von Goroutines erstellt?

Ich verstehe, dass goroutines auf mehrere OS-Threads gemultiplext sind. Wenn also einer blockiert wird, etwa während ich auf I / O warte, laufen andere weiter. Aber gibt es eine Möglichkeit, im Voraus zu wissen, wie viele Threads ich erzeugen wü...
11.11.2009, 09:46
2
Antworten

Liegt das daran, dass der go-Compiler den Code optimiert hat?

%Vor% Die Ausgabe ist immer 1 . Allerdings ist es absolut ausreichend, dass 1s genug ist, damit die for -Schleife viele Male durchlaufen kann. Ich denke, die i in der Schließung ist die i in der main func. Siehe den folge...
12.11.2017, 01:37