Package org.jcsp.lang
Class AltingChannelOutputInt
- java.lang.Object
-
- org.jcsp.lang.Guard
-
- org.jcsp.lang.AltingChannelOutputInt
-
- All Implemented Interfaces:
ChannelOutputInt
,Poisonable
- Direct Known Subclasses:
AltingChannelOutputIntSymmetricImpl
public abstract class AltingChannelOutputInt extends Guard implements ChannelOutputInt
This extendsGuard
andChannelOutputInt
to enable a process to choose between many integer output (and other) events.A writing-end, obtained only from a
symmetric
channel by invoking its out() method, will implement this interface.Description
AltingChannelOutputInt extendsGuard
andChannelOutputInt
to enable a process to choose between many integer output (and other) events. The methods inherited from Guard are of no concern to users of this package.Example
import org.jcsp.lang.*; public class AltingOutputIntExample implements CSProcess { private final AltingChannelOutputInt out0, out1; public AltingOutputIntExample (final AltingChannelOutputInt out0, final AltingChannelOutputInt out1) { this.out0 = out0; this.out1 = out1; } public void run () { final Guard[] altChans = {out0, out1}; final Alternative alt = new Alternative (altChans); while (true) { switch (alt.select ()) { case 0: out0.write (0); System.out.println ("out0 written"); break; case 1: out1.write (1); System.out.println ("out1 written"); break; } } } }
- See Also:
Guard
,Alternative
,One2OneChannelSymmetricInt
,AltingChannelOutput
-
-
Constructor Summary
Constructors Constructor Description AltingChannelOutputInt()
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description abstract boolean
pending()
Returns whether the receiver is committed to read from this channel.-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface org.jcsp.lang.ChannelOutputInt
write
-
Methods inherited from interface org.jcsp.lang.Poisonable
poison
-
-