Hallo,
ich habe meine Probleme mit multithreading auf diesen jUnit code reduziert:
Die Ausgabe ist:
Wenn ich nur run() aufrufe läuft das Programm wie erwartet. Das Problem hängt also direkt mit der Nebenläufigkeit zusammen. Was kann dabei schief gehen?
Viele Grüße
Michael
ich habe meine Probleme mit multithreading auf diesen jUnit code reduziert:
Java:
private class jfmThread extends Thread {
int iHandle;
public jfmThread(int serial) {
iHandle = new JavaFish().jrOpenInterfaceUSB(60, serial);
}
public synchronized void run() {
System.out.println(iHandle);
new JavaFish().jrSetMotorEx(iHandle, 1, 1, 6);
try {
wait(10000);
} catch (InterruptedException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
new JavaFish().jrCloseInterface(iHandle);
System.out.println(iHandle);
}
}
@Test
public void motorThreadTest() {
new jfmThread(0x11).start();
}
Die Ausgabe ist:
Code:
0
Wenn ich nur run() aufrufe läuft das Programm wie erwartet. Das Problem hängt also direkt mit der Nebenläufigkeit zusammen. Was kann dabei schief gehen?
Viele Grüße
Michael
Zuletzt bearbeitet von einem Moderator: