問題タブ [ace]
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++ - ACE_Mutexがpthread_mutex_destroyを呼び出すことはありません
私のコードACE_Mutex
では、pthreadを備えたシステム(QNX)のACEライブラリから使用しています。今、のデストラクタがをACE_Mutex
呼び出さないように見えるという問題が発生していますpthread_mutex_destroy
。これは、同じメモリ位置にある後続のミューテックスが初期化されるときに問題を引き起こします。これは、 ()をpthread_mutex_init
返すためです。errno=16
EBUSY
ACE_Mutex::remove
(Mutex.inl内の)のコードを見ると、奇妙なプリコンパイラディレクティブのセットがあります。
ACE_OS::mutex_destroy
具体的には、toの呼び出しが条件付きであり、pthreadが有効になっているときに呼び出されない理由がわかりません。これにより、remove
プロセス間ミューテックス以外のメソッドが効果的に空のボディになります。誰かがこのコードの理論的根拠を説明できますか?
c++ - ACE マクロ定義エラー
ACE ロギング マクロを展開できません。これは初歩的な問題ですが、頭を悩ませることはできません。
可変引数リストを使用して独自の ACE ログ マクロを作成しようとしています。私のコンパイラ (gcc バージョン 4.4.6 20120305 (Red Hat 4.4.6-4) (GCC)) は__VA_ARGS__
標準をサポートしています。私の現在の定義は次のとおりです。
この呼び出しシーケンスを介して呼び出したいもの:
しかし、次のコンパイルエラーが発生します。
この問題に対処するには、マクロ定義をどのように修正すればよいですか?
c++ - ACE_RCSIDがACE6.1に見つかりません
ACE_RCSIDは、いくつかのlogginの目的でACE5.5で使用できる関数です。これはACE6.1にはありませんが、ACE6.1でこれに類似した他の同等の機能を使用できますか。
c++ - このスマート ポインターを書き換える
コードを ACE から Poco に転送しています。私はマルチスレッド設計に慣れていないので、少し混乱しています!
Poco::AutoPtr はクラス テンプレートとして 1 つの引数しか受け入れないため、このように書き直すことはできません。
どのように書けばよいですか?
ubuntu - OpenDDS IDL コンパイラ コンパイラの問題
そして、単純なIDLファイルをコンパイルしようとして少し立ち往生しています。
ご覧のとおり、コンパイラは LibTao と LibAce を検出しませんでしたが、PATH に設定されています。
echo PATH=/home/ricardo/Desktop/librerias/dds/ACE_wrappers/ace:$PATH PATH=/home/ricardo/Desktop/librerias/dds/ACE_wrappers/ace:/usr/local/sbin:/usr/local/bin :/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games 環境変数は次のように設定されます:
/ホーム/リカルド/デスクトップ/librerias/dds
誰が何が悪いのか分かりますか?、私はステップを逃しましたか? *.idl ファイルをコンパイルするには、他にどの環境変数 ai が必要ですか?
c++ - ACE_SOCK_Acceptor で接続を受け入れる
ACEを学び始めたばかりです。簡単な例をいくつか試してみたところ、問題が発生しました。これは私のコードです:
を呼び出すと、常に -1 が返されますacceptor.open(...)
。私はネットワークプログラミングに少し慣れていません。私が知る限り、コードに問題はありません。Wi-Fi を備えたラップトップでプログラミングしていますが、違いはありますか? また、ファイアウォールをオンにしています。(オフにしてみましたが、違いはありません)。
これはサーバー側のプログラムです。何らかの方法でコンピュータを構成する必要がありますか?
どんな助けでも大歓迎です。
c++ - DLL への未処理の例外リンク
作成した DLL にリンクするときに問題が発生します。スローされる例外はUnhandled exception at 0x000007FA17461069 (ntdll.dll)
. 奇妙なことに、これは DLL を win32 アプリケーションでリンクした場合にのみ発生し、win32 コンソール アプリケーションではリンクしないということです。問題は、スレッドの作成を扱うもののようです。
コール スタックは次のとおりです。
DLL には、オペレーティング システムの I/O 完了ポートを使用する ACE proactor フレームワークの実装が含まれています。コンソール アプリケーションでは正常に動作しますが、win32 ウィンドウ アプリケーションでは動作しません。
どんな助けでも大歓迎です。
編集:以下のコメントで要求されたとおり:
例外をスローするコード行は次のとおりです。ACE_Service_Config::open(GetCommandLineA());
私は ACE 構成フレームワークを使用して、DLL を svc.conf ファイルで動的にロードします。main
これは、コンソール プログラムの機能に対して記述する必要がある唯一のコード行です。
WM_CREATEメッセージがキャッチされた後、この行を書いてみました。クラッシュします。