Synchronization - Siemens TC45 User Manual

Cellular engine
Hide thumbs Also See for TC45:
Table of Contents

Advertisement

TC45 TC45 JAVA User's Guide
Confidential / Released
rcv = 0;
while(((char)rcv != 'q') && ((char)rcv != 'Q') && (rcv != -1)){
rcv = dataIn.read();
if (rcv >= 0) {
System.out.print((char)rcv);
}
}
/* The example continues after the next block of text */
In .../Siemens/SMTK/TC45/IMPSiemens/src/examples a complete data connection example,
DataConnectionDemo.java, can be found.
These streams behave slightly differently than regular data streams. The streams are not
closed by using the close() method. A stream remains open until the release() method is
called. A module can be switched from the data mode to the AT command mode by calling
the breakConnection() method.
/* continue example */
if (rcv != -1) {
// Now break the data connection
System.out.println("\n\n\rBreaking connection");
try {
strRcv = ATCmd.breakConnection();
} catch(Exception e) {
System.out.println(e);
}
System.out.println("received: " + strRcv);
} else {
// Received EOF, somebody else broke the connection
System.out.println("\n\n\rSomebody else switched to " +
}
System.out.println("Hanging up");
strRcv = ATCmd.send("ATH\r");
System.out.println("received: " + strRcv);
} catch(IOException e) {
System.out.println(e);
}
} else {
System.out.println("No data connection established,");
}
An IOException is thrown if any function of the I/O streams are called when the module is in
AT command mode
11.1.1.4

Synchronization

For performance reasons there is no synchronization done in this class. If an instance of this
class has to be accessed from different threads it has to be ensured that the send()
functions, the release() function, the cancelCommand() function and the breakConnection()
function are synchronized in the user implementation.
TC45_JAVA User's Guide_V02
"command mode!");
Page 64 of 72
30.06.2003

Hide quick links:

Advertisement

Table of Contents
loading

Table of Contents