[Message Prev][Message Next][Thread Prev][Thread Next][Message Index][Thread Index]
Re: [MD:7043] Re: r3987 - trunk/src
- X-ml-count: 7044
- Subject: Re: [MD:7043] Re: r3987 - trunk/src
- From: Kyotaro HORIGUCHI <horiguti@xxxxxxxxxxx>
- Date: Fri, 25 Nov 2005 18:03:11 +0900 (JST)
- User-agent: Mew version 4.2.54 on Emacs 22.0 / Mule 5.0 (榊) / Meadow-3.00-dev (菊)
ほりぐちです.
> これなんですが、HDC 二関する最近の変更はまったく目を通せていないので、
> ソースをちゃんと見ずにいっていますが、ちょっと気になったので。。。
>
> 上記diff のようなことしなければならない状況と言うのが、ちょっと心配です。
これは微妙なのですが, 複数の場所で行われています. かなり場当たりっ
ぽいのですが複数のリソースを複数のスレッドがつかみ合っているのでもっ
と全体的に整理しなおさないといけないような気がします.
> それよりなにより、 メンバ hdc のポインタを取得するためにクリティカルセク
> ションを使用するって、意味が無くないですか? phdc を保持する理由があると
> したらmw32 のポインタ値が変わった事に対応するためと考えられますが、その値
> が変化するのだとしたらEnterCriticalSection()/LeaveCriticalSection() で使
> 用するわけにはいかないはずだし。
これは単純に大間違いです^^;... 本当はLevae を hdc の変更の後ろに
持っていかなければなりません. 直しておきます.
> あと、hdc_refcount って本当に必要なのかな? と気になる。DC の使い方を整理
> したという事だったと思うのですが、refcount を用いる必要があると言う事は参
> 照による複製を作られると言う事ですよね。
名前が悪いですね. これでやりたいことは hdc を多重に確保しない, か
つ確保したところで解放するということだけです. 強いて言えば
nestlevel? そうすれば間違えませんかね.
> 1つのスレッドで描画する事が徹底していて、
これについては, 上で書いたように使い勝手上ちょっと微妙です.
> GetDC()で描画時にHDCを取得するのであれば、HDCは参照コピーされる
> ような事はないと単純に考えますが、そういうわけにもいかない? (ソー
> スを見てないので的外れの可能性が高いのですが)。
--
ほりぐちきょうたろう