Hi,
ich habe ein Buch zur Spieleprogrammierung und da verwirrt mich eine Stelle:
Hier wird ein neuer Thread erstellt und in dem Thread wird eine BufferStrategy erstellt.
Da aber keine der beiden Methoden irgendeine Schleife hat, die solange läuft, bis eine Bedingung nicht mehr zutrifft, frage ich mich, warum das alles klappt.
Nach dem die BufferStrategy erstellt wurde, ist doch der Thread zu Ende oder wird er etwa immer durchloffen?
Wenn der Thread dann zu Ende wäre und keine neuen BufferStrategys erstellt werden würden, dann müsste die Ausgabe flimmern, was es aber nicht tut.
Liebe Grüße
Reality
ich habe ein Buch zur Spieleprogrammierung und da verwirrt mich eine Stelle:
Code:
public void setFullScreen(DisplayMode displayMode) {
final JFrame frame = new JFrame();
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setUndecorated(true);
frame.setIgnoreRepaint(true);
frame.setResizable(false);
device.setFullScreenWindow(frame);
if (displayMode != null &&
device.isDisplayChangeSupported()) {
try {
device.setDisplayMode(displayMode);
}
catch (IllegalArgumentException ex) {}
// fix for mac os x
frame.setSize(displayMode.getWidth(),
displayMode.getHeight());
}
// avoid potential deadlock in 1.4.1_02
try {
EventQueue.invokeAndWait(new Runnable() {
public void run() {
frame.createBufferStrategy(2);
}
});
}
catch (InterruptedException ex) {
// ignore
}
catch (InvocationTargetException ex) {
// ignore
}
}
Hier wird ein neuer Thread erstellt und in dem Thread wird eine BufferStrategy erstellt.
Da aber keine der beiden Methoden irgendeine Schleife hat, die solange läuft, bis eine Bedingung nicht mehr zutrifft, frage ich mich, warum das alles klappt.
Nach dem die BufferStrategy erstellt wurde, ist doch der Thread zu Ende oder wird er etwa immer durchloffen?
Wenn der Thread dann zu Ende wäre und keine neuen BufferStrategys erstellt werden würden, dann müsste die Ausgabe flimmern, was es aber nicht tut.
Liebe Grüße
Reality