Interstage Application Server リファレンスマニュアル(API編) |
目次
索引
![]() ![]() |
第2章 C++言語インタフェース | > 2.21 イベントサービスインタフェース | > 2.21.1 CosEventCommクラス |
CosEventComm::PullSupplier::try_pull
#include <EventService_cplus.h> CORBA::Any *CosEventComm::PullSupplier::try_pull( CORBA::Boolean& has_event, CORBA::Environment& env ) throw( CORBA::Exception );
サプライヤにイベントデータを要求します。サプライヤからイベントデータを取り出せない場合は、即座に復帰します。なお、イベントデータを取り出せるまでブロックしたい場合には、CosEventComm::PullSupplier::pullを使用してください。
取り出したany型のイベントデータは、この領域が不要になった時点で、deleteを使用して領域を解放する必要があります。
正常終了した場合は、envのexceptionメンバにNULLオブジェクトリファレンスが設定され、サプライヤからのイベントデータが通知されます。イベントデータを取り出せた場合は、has_eventにCORBA_TRUEが設定されます。イベントデータを取り出せなかった場合には、has_eventにCORBA_FALSEが設定されます。この場合もany型の空のイベントデータの領域が獲得されるので、取り出したany型のイベントデータの領域は、deleteを使用して領域を解放する必要があります。
異常終了した場合は、envのexceptionメンバにSystemExceptionオブジェクト、またはUserExceptionオブジェクトのオブジェクトリファレンスが設定されます。
ユーザ例外の場合、以下の例外が発生します。
システム例外の場合、以下の例外が発生します。
目次
索引
![]() ![]() |