CSP for Java
(JCSP) 1.1-rc4

org.jcsp.lang
Interface One2OneChannel

All Known Subinterfaces:
FilteredOne2OneChannel

public interface One2OneChannel

This defines the interface for a one-to-one Object channel.

The only methods provided are to obtain the ends of the channel, through which all reading and writing operations are done. Only an appropriate channel-end should be plugged into a process – not the whole channel. A process may use its external channels in one direction only – either for writing or reading.

Actual channels conforming to this interface are made using the relevant static construction methods from Channel. Channels may be synchronising, buffered, poisonable or both (i.e. buffered and poisonable).

Description

One2OneChannelImpl is an interface for a one-to-one object channel. Multiple readers or multiple writers are not allowed – these are catered for by Any2OneChannel, One2AnyChannel or Any2AnyChannel.

The reading process may ALT on this channel. The writing process is committed (i.e. it may not back off).

The default semantics of the channel is that of CSP – i.e. it is zero-buffered and fully synchronised. The reading process must wait for a matching writer and vice-versa.

The static methods of Channel construct channels with either the default semantics or with buffering to user-specified capacity and a range of blocking/overwriting policies. Various buffering plugins are given in the org.jcsp.util package, but careful users may write their own.

The Channel methods also provide for the construction of Poisonable channels and for arrays of channels.

Author:
P.D. Austin, P.H. Welch
See Also:
Channel, Alternative, Any2OneChannel, One2AnyChannel, Any2AnyChannel, ChannelDataStore

Method Summary
 AltingChannelInput in()
          Returns the input channel end.
 ChannelOutput out()
          Returns the output channel end.
 

Method Detail

in

AltingChannelInput in()
Returns the input channel end.


out

ChannelOutput out()
Returns the output channel end.


CSP for Java
(JCSP) 1.1-rc4

Submit a bug or feature to jcsp-team@kent.ac.uk
Version 1.1-rc4 of the JCSP API Specification (Copyright 1997-2008 P.D.Austin and P.H.Welch - All Rights Reserved)
Java is a trademark or registered trademark of Sun Microsystems, Inc. in the US and other countries.