goroutine

    1

    1答えて

    私はgoroutinesとチャンネルで初めて仕事をしています。 私は、ユーザーが新しいゴルーチンを接続するたびにスポーンされるwebsocket接続を持っています。ユーザーがwebsocket接続から切断した場合、このgoroutineを停止したいと考えています。 停止信号を管理するために私はチャンネルのマップを作成しました。各エントリは、ユーザwebsocket接続によって識別できます。私はwe

    0

    2答えて

    Goルーチンを使用してJsonデータをリクエストに戻そうとしています。私がtest1(w、r)を "go"せずに実行すると、私のコードが動作します。私がgo1ルーチンとしてtest1()を使うと、jsonのデータは返されません。なぜこうなった? func main() { http.HandleFunc("/test", viewdata) http.ListenAndSe

    1

    1答えて

    私は並列に行列を扱うプログラムを書いています。 私の行列は、定数nを使用して作成されます。 a := make(chan [n][n]int) これは大きいnしかし、何のために周りの12の値の下で何のために正常に動作し、次のエラーが与えられます: channel element type too large (>64kB) const n = 10 チャンネルは、次のコードを使用して作

    0

    2答えて

    例として、 thisを参照して、ジョブの初期化と終了の間に定義済みの遅延を追加します。私はmapidにjobidとwaittimeというデータを保存しました。それから私は地図と同じ構造体型のチャンネルで地図全体をコピーしました。しかし、私は行くルーチン呼び出しでマップ値を取得することができません。私を助けてください、私は新しく行きます。 package main import "fmt"

    -5

    1答えて

    私の質問は、さまざまなタスクを実行するためにたくさんのゴルーチンを作成できますが、ウェブサイトをリクエストしているときにボトルネックが発生するかどうかを知りたかったのです。コンピュータのポート数は重要ですか?

    -1

    1答えて

    : type name struct { name string age int } func main() { c := make(chan name) c <- name{"sfsaf", 1} a, b := <- c close(c) } 結果: fatal error: all goroutines ar

    1

    1答えて

    を終了考える: func main() { timeout := time.NewTimer(n) go longRunningFn() <-timeout.C } それはmainタイムアウトにlongRunningFnのスタックトレースを取得することはできますか?

    0

    1答えて

    golangでgin-gonicサーバーを使用して1つのストリーミングAPIを作成したかったのです。 func StreamData(c *gin.Context) { chanStream := make(chan int, 10) go func() {for i := 0; i < 5; i++ { chanStream <- i time.Sle

    0

    2答えて

    私はマンデルブロ集合を計算し、外出先プログラムを実行していますよ。 gouroutineはすべてのピクセルに対して収束を計算するために開始されます。このプログラムは、pixelLengthx = 1000、pixelLengthy = 1000に対して正常に実行されます。私はpixelLengthx = 4000、pixelLengthy = 4000で同じコードを実行した場合 、プログラムは数十