2
のために、私は無期限アクセスFD(3)アスタリスクのEagI
eagi := os.NewFile(uintptr(3), "/dev/stdeagi")
data := bufio.NewReaderSize(eagi, 64*1024)
...
data.WriteTo(conn) // Blocks indefinitely!
それも、エラーをスローしていないようブロックしているように見える次Golangコード持っている - 私の推測ではあるが、私がアクセスしていますFDが間違っています。私の目的は、Asterisk EAGIのプロセス 'FD3にアクセスすることです。私はまた、代替パスfmt.Sprintf("/proc/%d/fd/3", os.Getpid())
を読むことを試みましたが、これは同じように動作するようです。私は間違って何をしていますか?
あなたはファイルディスクリプタ3を持っていることは確かか?ファイルを開こうとしましたか?私は私のドッカーコンテナ内で 'lsのは/ proc//fd'を行うと –
JimB
@JimB、私は '3'を参照してください。私はそれをcat' 'にしようとすると、私は'許可Denied' – Angad
@Flimzyを取得し、私はインスピレーションとしてhttps://golang.org/pkg/os/#pkg-variablesを使用しました、そしてそれは、Goが使用するようだ何ですか? – Angad