// Setup Tomcat instance
Tomcat tomcat = getTomcatInstance();
- tomcat.getConnector().setAttribute("connectionTimeout", "200000");
Context root = tomcat.addContext("", TEMP_DIR);
Tomcat.addServlet(root, "comet", new SimpleCometServlet());
root.addServletMapping("/", "comet");
// Create connection to Comet servlet
final Socket socket =
SocketFactory.getDefault().createSocket("localhost", getPort());
- socket.setSoTimeout(100000);
- System.out.println(socket.getLocalPort());
+ socket.setSoTimeout(10000);
final OutputStream os = socket.getOutputStream();
String requestLine = "POST http://localhost:" + getPort() +
Thread.sleep(100);
count ++;
}
- System.out.println("Writer sent " + writeThread.getPingCount() +
- " pings");
- if (writeThread.isAlive()) {
- System.out.println("Writer not stopped");
- }
-
+
// Wait for the read thread to stop
count = 0;
while (readThread.isAlive() && count < 100) {
private static class PingWriterThread extends Thread {
- private int maxPingCount;
- private volatile int pingCount;
+ private int pingCount;
private OutputStream os;
private volatile Exception e = null;
- public PingWriterThread(int maxPingCount, OutputStream os) {
- this.maxPingCount = maxPingCount;
+ public PingWriterThread(int pingCount, OutputStream os) {
+ this.pingCount = pingCount;
this.os = os;
}
return e;
}
- public int getPingCount() {
- return pingCount;
- }
-
@Override
public void run() {
try {
- for (pingCount = 0; pingCount < maxPingCount; pingCount++) {
+ for (int i = 0; i < pingCount; i++) {
os.write("4\r\n".getBytes());
os.write("PING\r\n".getBytes());
os.flush();