問題タブ [glib]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c - g_slice_new が構造体型を受け入れない
それが私がそれを構築する方法です: gcc pkg-config --cflags --libs gtk+-2.0
-o spawn spawn_with_pipes.c
以下の例のスニペットでは、次のエラーが表示されます。"Data - it refer to data= g_slice_new(Data); の前に構文エラーがあります。
windows - MinGW で GLib をコンパイルして使用する方法
Windows 環境でGnome GLibを使用し、無料の MinGW コンパイラを使用して C で開発したいと考えています。問題は、このライブラリをコンパイルする方法がまったくわからないことです。これを達成するために必要なツールと、従うべき指示について説明してください。
c - C /Glibメモリ管理{ぶら下がっている参照なし>whyy!??}
次のように、未定義の引数を使用して関数を呼び出すプログラムがあります。
「」の間の引数は文字列であるため、function_nameでは次のようになります。
したがって、データがva_listの引数を指している場合、関数が戻ると、データが指し示しているのは理論的には無効になり、garrayでも同様になります。
(データポインタが、予約されていないメモリアドレスを指しているため、参照がぶら下がっています)。
しかし、それは起こらないようで、プログラムはうまく動作します。なぜ?そして、Cでは、関数に渡される引数はスタックに格納されるので、データポイントはスタック内で実際にメモリに存在しますか?
thnkxたくさん。
c++ - プロセスとスレッド間の GAsyncQueue の使用法の良い例はどこにありますか
GAsyncQueueの説明を超えて 、このデータ構造、例、パターンの使用方法について何も見つかりません。スレッドとメイン プロセス間の IPC メカニズムとして使用しようとしています。
誰かがそれを実証できますか?
ありがとう
c++ - g_io_channel_win32_make_pollfd のドキュメントが見つかりません
のドキュメントはありますg_io_channel_win32_make_pollfd
か?
この関数を使用して、Windows でメイン スレッドと別のスレッドの間で IPC 用の FD を作成したいと考えています。
ここでは簡単に説明するだけで、実際の使用方法については説明していません。
c - 呼び出し元によって解放されるべき C/Glib 文字列
私はglibを使用しています.glibに
は、自分で解放する必要がある文字列を返す関数がたくさんあります.
これらの関数を他の関数に渡すことはできますか?
例: function1は、呼び出し元のために解放する必要がある文字列を返します。 function2は、解放する必要がある文字列へのポインターを返します。
function1 から返された文字列を解放するにはどうすればよいですか? これは必要ですか?
どうもありがとう、
そして私の英語でごめんなさい
glib - glibエラーと警告の数字は何ですか?
myappの後の数字はどういう意味ですか?ソースコード行には対応しておらず、16進数またはバイナリの解釈もバイナリ内の関連する場所に対応していません。番号はいつも私を不思議に思っており、GLibソースを見ると、それは行番号であると思われます。数字はどういう意味ですか、それともどういう意味ですか?
ubuntu - ubuntu 9.04 で Webkit をビルドする
私は彼らのsvnサーバーからwebkitソースコードをチェックアウトしました.
./autogen を発行すると、次のエラーが表示されました。
GLIB をチェックしています... configure: エラー: パッケージ要件 (glib-2.0 >= 2.21.3 gobject-2.0 >= 2.0 gthread-2.0 >= 2.0) が満たされませんでした:
「glib-2.0 >= 2.21.3」を要求しましたが、GLib のバージョンは 2.20.1 です
Google で検索しましたが、glib を 2.21.3 にアップグレードする方法に関する情報が見つかりません。
python - gobject io モニタリング + ノンブロッキング読み取り
io_add_watch
Python で (gobject 経由で) モニターを使用する際に問題が発生しました。通知のたびにバッファ全体のノンブロッキング読み取りを実行したいと考えています。コードは次のとおりです (少し短縮されています)。
トリックは次のとおりです。デバッグ出力をアクティブにせずにプログラムを実行すると、got_message
呼び出しが行われません。最初に stderr に多くのものを書き込むと、問題はなくなります。このコードに表示される出力以外に何も記述しないと、stdin メッセージ シグナルを取得できません。もう 1 つの興味深い点は、stderr デバッグを有効にして同じアプリを実行しようとするとstrace
(見逃した fcntl / ioctl 呼び出しがあるかどうかを確認するために)、問題が再び発生することです。
つまり、strace を使用せずに最初に stderr に大量の書き込みを行うと、io_watch
機能します。strace でたくさん書くか、まったく書かないとうまくいきio_watch
ません。
「some other init」部分には時間がかかるため、「hooked 2」出力が表示される前にテキストを入力し、「ready」後に「ctrl + c」を押すと、get_message
コールバックが呼び出されますが、読み取り呼び出しは EAGAIN をスローします。バッファが空のようです。
標準入力に関連する Strace ログ:
ここで何が起こっているかについて誰か考えがありますか?
編集:別の手がかり。アプリをリファクタリングして、別のスレッドで読み取りを行い、パイプ経由で戻そうとしました。それは「一種の」作品です:
同じテキストを新しいパイプに入れるだけで、すべてが機能し始めるのは驚くべきことです。問題はそれです:
- 最初の行はまったく「認識」されていません-2行目以降の行のみが表示されます
- それは醜いです
多分それはなぜそれが起こっているのかについて他の誰かの手がかりを与えるでしょうか?