問題タブ [gio]

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.

0 投票する
4 に答える
1998 参照

python - Windows で Glib を使用してソケットを監視すると、非ブロック モードになります

次のコードは、Windows では正しく動作しません (Linux では動作します)。

glib ソースのさまざまな場所にあるコメントのスニペットや、他の場所で、Windows ではポーリング中にソケットが非ブロック モードになることが言及されています。その結果、コールバックself.outgoing_cbが常に呼び出され、ソケットへの書き込みが次のエラー メッセージで失敗します。

書き込み前の呼び出しsock.setblocking(True)は、これを回避するようには見えません。ポーリングの優先順位を下げ、エラー メッセージを無視すると、期待どおりに動作しますが、多くのイベントがスローされ、多くの CPU が消費されます。Windows でこの制限を回避する方法はありますか?

アップデート

指摘するかもしれませんが、ポーリングの全体的なポイントはPOLLOUT、書き込み呼び出しを行ったときにEAGAIN/を取得できないことEWOULDBLOCKです。私が受け取っている奇妙なエラー メッセージは、これら 2 つのエラー コードに相当する Windows のものだと思います。言い換えれば、gobject.IO_OUTソケットが正常に書き込みを許可しない場合にイベントを取得していますが、それをブロック モードにすると、この不適切なエラーが発生します

別のアップデート

これが正しく機能する Linux では、ソケットは非ブロッキング モードに切り替えられず、ソケットがIO_OUTブロックせずに、またはエラーをスローせずに書き込みを許可するときに を受け取ります。Windowsでエミュレート/復元したいのはこの機能です。

その他の注意事項

からman poll:

からman select:

0 投票する
1 に答える
2805 参照

python - Pythonでgioとsamba共有にアクセスする

gioのPythonバインディングを介して共有にアクセスするための単純なコマンドラインクライアントを作成しようとしています(はい、主な要件はgioを使用することです)。

その前身のgnome-vfsと比較すると、認証処理(サブクラス化MountOperation)を行うためのいくつかの手段が提供されており、のようなsamba共有に非常に固有のいくつかの方法も提供されていることがわかりset_domain()ます。

しかし、私はこのコードで立ち往生しています:

fh.mount_enclosing_volume()そのサーバーが認証を必要とする場合、このメソッドはパラメーターとしてを使用するため、への呼び出しが必要であると思いMountOperationます。問題は、このメソッドを呼び出しても何も行われず、fh.enumerate_children()次に来る論理(使用可能な共有を一覧表示する)が失敗することです。

誰もがこれがgioでどのように行われるかについての実用的な例を提供できますか?

0 投票する
1 に答える
341 参照

python - gnomevfs または gio?

Python を使用した非同期 IO の場合、またはに依存することが望ましいですgiognomevfs?

また、どちらがより「クロスプラットフォーム」ですか?

0 投票する
2 に答える
969 参照

python - GIOを使用した非同期HTTPリクエスト

PythonのGIOバインディングを使用して非同期HTTPPOSTリクエストを実行する方法の例をいただければ幸いです。

編集:ツイストを使用せずに求められた例。

0 投票する
1 に答える
810 参照

glib - Gファイルの問題

私は持っています:

私のコードで。しかし、コンパイルしようとすると、次のエラーが表示されます。

未定義の参照: 'g_file_new_for_path'

私が持っているインクルードセクションで#include <gio/gio.h>

このコードのどこが間違っていますか?

0 投票する
1 に答える
355 参照

glib - valaFileInfoget_file_typeは不明です

私は、ディレクトリを通過し、ディレクトリ内のすべてのファイルとサブディレクトリを一覧表示する関数を作成しようとしています。

このコードを実行すると、サブディレクトリ内のファイルは出力されません。すべてのファイル/ディレクトリタイプは「G_FILE_TYPE_UNKNOWN」です。誰かがこれまたは私が使用できる別の方法を修正する方法を知っていますか?

0 投票する
2 に答える
528 参照

c++ - Gio ファイル モニターを使用した gtkmm アプリケーション

複数のディレクトリの変更を監視する必要があります。ドキュメントが示唆しているように、ディレクトリモニターを使用Gtk::Main、呼び出し、および追加しています。Gio::Initただし、どのディレクトリに対しても、コールバックは呼び出されません。モニター専用の別のループが必要ですか? もしそうなら、どのように組み合わせて使用​​しGtk::Mainますか?

0 投票する
1 に答える
175 参照

linux - iPod のマウントに関する複数のマウント イベント

ストレージボリュームがマウントされているかマウント解除されているかを検出する必要があるアプリに取り組んでいます。そのために使っGIOています。mount-addedとの信号を聞いていmount-removedます。ペンドライブをマウント/アンマウントすると、すべて正常に動作します。ただし、iPod のマウント時に問題が発生します。マウントとアンマウントでそれぞれ 2 つのコールバックを取得しています。GMountオブジェクトの 1 つがシャドウされると想定しましたが、g_mount_is_shadowedは両方に対して false を返します。どちらを処理し、どれを無視するかを決定するにはどうすればよいですか? 両方処理できません。ストレージ デバイスに対応するマウント/アンマウントを検出し、それのみを処理する必要があります。

0 投票する
1 に答える
182 参照

linux - GMountとGVolume

私は初めてで、との間でGIO完全に混乱しています。参照によると、これは「マウントされた」ファイルシステムであり、マウント可能なユーザーに表示されるオブジェクトを表しているときにアクセスできます。これら2つのタイプについていくつか質問があります。GMountGVolumeGIO GMountGVolume

  1. マウントされGVolumeたオブジェクトはオブジェクトと同等GMountですか?
  2. マウントされたGVolumeオブジェクトは常にオブジェクトに関連付けられGMountます。それらの間の関係は何ですか?
  3. オブジェクトは、オブジェクトGMountに関連付けられている場合と関連付けられていない場合がありGVolumeます。後者に関連付けられていないのはいつですか?
0 投票する
2 に答える
792 参照

python - GIOのGSocketのPythonバインディングはどこにありますか?

Pythonバインディングはどこにありますか、またはGIOGSocketおよびその他の低レベルネットワークサポートのPythonバインディングの現在のステータスは何ですか?