1

dylibをロードし、ハンドルを破棄するとします。

void loadfoo()
{
    dlopen("/lib/foo.dylib" , RTLD_NOW);
}

次に、別の機能で閉じたいと思います。

void closefoo()
{
    dlclose // ???
}

の呼び出し中に保存されていない場合、以前にロードされたdylibのハンドルをどうにかして見つけることができますdlopenか?

4

1 に答える 1

2

本番環境でそのようなコードを見たことがあれば、私は作成者を永遠に侮辱しますが、

void *handle = dlopen("/lib/foo.dylib", RTLD_NOW);
dlclose(handle);
dlclose(handle);
于 2012-05-02T12:01:53.300 に答える