[pgsql-jp: 26368] Re: executeUpdate()から戻ってこない

Yutaka tanida yutaka @ hi-net.zaq.ne.jp
2002年 6月 13日 (木) 17:25:33 JST


谷田です。

On Thu, 13 Jun 2002 13:25:09 +0900
nokihara @ fecdev.furuno.co.jp (森岡郁子) wrote:

> サンプルプログラムを作成したのですが、executeUpdate()を実行するとこのメソッドから
> ぬけてきていないような現象になっているような感じです。
> public class sample extends Applet {
>     public  void    paint( Graphics g ) {
(snip)
>     }
> }

そもそも、paint()は描画処理だけを行うためのメソッドなので、そこでこのよ
うな重い処理を動かしてはいけません。このような処理は別スレッドで行い、描
画処理と分けるのが基本です。以下の例はオフラインイメージを使って描画を最
適化したもののイメージです。


// importは省略

public class Sample extens Applet implements Runnable {
        Image img=new BufferedImage(320,480,BufferedImage.TYPE_INT_RGB);
	Graphics g;

	public void init() {
		g=img.getGraphics();
	}

	public void start() {
	    super.start();
	    new Thread(this).start();
	}

        public void run() {
	    // 接続処理
	    // gに描画したらrepaint()を呼ぶ
        }

	public void paint(Graphics g) {
	    // 描画のみの処理
	    g.drawImage(img,0,0,this);
	}
}

-- 
Yutaka tanida <yutaka @ hi-net.zaq.ne.jp>




pgsql-jp メーリングリストの案内