Hallo,
ich habe ein Problem mit meiner TCP-IP Verbindung, und zwar verbinde ich mich mit einem anderen Programm (welches zuverlässsig funktioniert) mit meinem Programm unten.
Das Programm unten funktioniert so:
ich bekomme vom anderen Computer 6600 gesendet und frage das in ersten if- Abfrage ab, wenn ich 6600 bekommen habe, sende ich 6600 wieder zurück, das funktioniert, dann bekomme ich 4531 herein und möchte die auch wieder zurückschicken -> ich bekomme 4531 auch herein aber es wird nicht mehr zurückgesendet, oder es wird zurückgesendet aber es geht irgendwie unter oder ...
Hier liegt mein Problem.
Kann ich irgendwie überprüfen, ob das zu sendende wirklich gesendet wurde oder hätte vielleicht jemand einen Tipp, wie ich das überprüfen kann.
Vielen dank für eure Antworten!!
lg
Hannes
ich habe ein Problem mit meiner TCP-IP Verbindung, und zwar verbinde ich mich mit einem anderen Programm (welches zuverlässsig funktioniert) mit meinem Programm unten.
Das Programm unten funktioniert so:
ich bekomme vom anderen Computer 6600 gesendet und frage das in ersten if- Abfrage ab, wenn ich 6600 bekommen habe, sende ich 6600 wieder zurück, das funktioniert, dann bekomme ich 4531 herein und möchte die auch wieder zurückschicken -> ich bekomme 4531 auch herein aber es wird nicht mehr zurückgesendet, oder es wird zurückgesendet aber es geht irgendwie unter oder ...
Hier liegt mein Problem.
Kann ich irgendwie überprüfen, ob das zu sendende wirklich gesendet wurde oder hätte vielleicht jemand einen Tipp, wie ich das überprüfen kann.
Vielen dank für eure Antworten!!
lg
Hannes
Code:
class OutputThread extends Thread {
InputStream in;
private int m;
private int state = 10;
boolean stoprequested;
public OutputThread()
{
stoprequested = false;
}
public synchronized void requestStop()
{
stoprequested = true;
}
public void run()
{
try {
Socket sock = new Socket("10.0.0.196", 5900);
InputStream in = sock.getInputStream();
OutputStream out = sock.getOutputStream();
int len;
long k = 0;
byte[] b = new byte[700];
try {
while (!stoprequested)
{
try {
if ((len = in.read(b)) == -1)
break;
if (state == 10 && b[0] == 54 && b[1] == 54 && b[2] == 48 && b[3] == 48) //6600 kommt herein
{
System.out.print("Ausgabe State 10: ");
System.out.write(b, 0, len); //ich schicke b wieder hinaus
System.out.println("" + len);
out.write(b);
state = 30;
}
if (state == 30 && b[0] == 52 && b[1] == 53 && b[2] == 51 && b[3] == 49) //4531 kommt herein
{
out.write(b, 0, len); //ich komme hier noch rein, das was hier
out.flush(); //geschickt werden soll, kommt am anderen Comp aber nicht an
System.out.print("Ausgabe State 30: ");
System.out.write(b, 0, len);
System.out.println("" + len);
state = 70;
}
if (state == 70)
{
m++;
System.out.println("Ausgabe State 70-" + m + ": " + b);
/* for (int i = 0; i < len; i++)
{
k++;
System.out.print(b[i]);
if (k == 50)
{
k = 0;
System.out.println("");
}
} */
System.out.println("");
//state = 100;
}
}
catch (InterruptedIO...