1
私はこのようなコードがあります。どのようにクロスプラットフォームのポートunixパイプですか?
が
#include <unistd.h>
#define READ_FD 0
#define WRITE_FD 1
int m_pipe[2];
if(pipe(m_pipe) != -1) {
unsigned long Id = gdk_input_add(m_pipe[READ_FD], GDK_INPUT_READ, Callback, (gpointer)this);
}
このライブラリを使用すると、それは驚くほどの両方のLinux(すべての主要な味:AS3、AS5、Solarisの場合)上に構築し、Windowsを。しかし、それは実際には窓では全く機能しません。
パイプを使用してコードを実装すると、WindowsとLinuxの両方でどのように動作するのですか?
"それは実際には窓では全く機能しません"という意味ですか?エラーメッセージなどを添付してください。 – dfa
ええと、私は実際にコンパイルして実行するので添付できますが、gtkはウィンドウ上のパイプから読み込むときに何らかのハッシュメッセージを表示します。 –
「ハッシュメッセージのようなもの」?私たちに推測を続けさせないでください。読んだメッセージとエラーを示す実際の戻り値を教えてください。また、これは 'pipe'への有効な呼び出しでもありません。実際には失敗したコードをコピーして貼り付けます。 –