私はバックグラウンドでサーバを起動するためのbashコマンドを実行しています: "./starServer &"しかし、私のサーバは起動に数秒かかります。私は、私が実際に移動して他のことをする前に、実行中のポートを確認し続けるために何ができるのだろうかと思っています。私はこれを助けたゴランapiの何かを見つけることができませんでした。どんな助けもありがとう!tcpポートが使用中であることを継続的にチェックします。
c := exec.Command("/bin/sh", "-c", command)
err := c.Start()
if err != nil {
log.Fatalf("error: %v", err)
}
l, err1 := net.Listen("tcp", ":" + port)
シェルでプロセスをバックグラウンドにしないでください。それは、子プロセスを正しく待つことができないようにするだけです。ポートにバインドされたサーバー信号を送信するか、接続が確立するまで接続を再試行する必要があります。 – JimB