jp.go.aist.rtm.RTC.port.publisher
クラス PublisherNew

java.lang.Object
  上位を拡張 jp.go.aist.rtm.RTC.port.publisher.PublisherBase
      上位を拡張 jp.go.aist.rtm.RTC.port.publisher.PublisherNew
すべての実装されたインタフェース:
java.lang.Runnable

public class PublisherNew
extends PublisherBase
implements java.lang.Runnable

データ送出タイミングを待つコンシューマを、送出する側とは異なるスレッドで動作させる場合に使用します。

Publisherの駆動は、データ送出のタイミングになるまでブロックされ、送出タイミングの通知を受けると、 即座にコンシューマの送出処理を呼び出します。


コンストラクタの概要
PublisherNew(InPortConsumer consumer, Properties property)
          コンストラクタです。
 
メソッドの概要
 int open(java.lang.Object[] args)
          当該Publisherの駆動を開始します。
 void release()
          駆動フラグがオフとなり、Publisherの駆動が停止します。
 void run()
          当該Publisherオブジェクトのスレッドコンテキストです。
 int svc()
          当該Publisherオブジェクトのスレッドコンテキストです。
 void update()
          送出タイミング時に呼び出します。
 
クラス jp.go.aist.rtm.RTC.port.publisher.PublisherBase から継承されたメソッド
destruct
 
クラス java.lang.Object から継承されたメソッド
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

コンストラクタの詳細

PublisherNew

public PublisherNew(InPortConsumer consumer,
                    Properties property)

コンストラクタです。

パラメータ:
consumer - 送出の駆動を待つコンシューマ
property - (本Publisherでは利用されません。)
メソッドの詳細

update

public void update()

送出タイミング時に呼び出します。ブロックしている当該Publisherの駆動が開始され、 コンシューマへの送出処理が行われます。

定義:
クラス PublisherBase 内の update

svc

public int svc()

当該Publisherオブジェクトのスレッドコンテキストです。 送出タイミングが通知されるまでブロックします。


open

public int open(java.lang.Object[] args)

当該Publisherの駆動を開始します。

パラメータ:
args - (本Publisherでは使用されません。)

release

public void release()

駆動フラグがオフとなり、Publisherの駆動が停止します。

ただし、すでに駆動スレッドがブロックされている場合には、 最大1回のみコンシューマの送出処理が呼び出されることがあります。

オーバーライド:
クラス PublisherBase 内の release

run

public void run()

当該Publisherオブジェクトのスレッドコンテキストです。 送出タイミングが通知されるまでブロックします。

定義:
インタフェース java.lang.Runnable 内の run