10/02/25 14:57:30
設計は同じ前提の比較なんだよ。
このソース見てから577読むと納得出来ないかなぁ。
イヤ勘違いなら申し訳ないけど。
1. の場合のソース
class MyApp extends IApplication {
public void start() { // ←スレッドB
MyCanvas canvas = new MyCanvas();
canvas.run();
}
}
class MyCanvas extends Canvas {
public void run() {
while() { /* ゲームループ */ }
}
}
2. の場合のソース
public class MyApp extends IApplication {
public void start() { // ←スレッドB
MyCanvas canvas = new MyCanvas();
Thread thread = new Thread( canvas ); // ←スレッドC
thread.start();
}
}
class MyCanvas extends Canvas implements Runnable {
public void run() {
while() { /* ゲームループ */ }
}
}