4

Qt で FUSE を使用しようとしていますが、fuse_main() と app.exec() には独自のイベント ループがあります。これは、以下に示すように、一方を開始すると他方が開始されないため、一方を開始すると他方が開始されないことを意味します。これに対処する方法は?

ヒューズの詳細については、http://fuse.sourceforge.net/ にアクセスしてください。

可能であれば、例を提供してください。

ありがとう、レアンドロ。

例:

これにより、ヒューズの開始が妨げられます。

int main(int argc, char *argv[])
{
    QCoreApplication a(argc, argv); // qt event loop
    a.exec();
    fuse_main(argc, argv, &hello_oper); // fuse event loop, it will not start
    return 0;
}

これにより、qtの起動が妨げられます。

int main(int argc, char *argv[])
{
    QCoreApplication a(argc, argv); // it will not start due to fuse_main invocation
    fuse_main(argc, argv, &hello_oper);
    return a.exec();
}
4

3 に答える 3

1

別のスレッドでファイルシステムを実行する必要があります。

于 2010-09-05T04:10:39.400 に答える
0

別のプロセスでFUSEを実行し、ソケット/パイプ/ RPC / ...を介して通信することもできます。FUSEがクラッシュしたり、何かを実行するのに忙しい場合でも、GUIは引き続き機能します。

于 2010-09-05T04:15:08.790 に答える