なぜVBは扱いが低いのか (200レス)
前次1-
抽出解除 レス栞

186: 名前は開発中のものです。 [sage] 2013/02/01(金) 01:04:06.57 ID:5kKv/peJ(1/2) AAS
>wVU/jdLoが問題にしてるのは、VB側で確保したヒープを、DLLなりに渡す方法じゃないのか?
そうだよ。俺はDLLにヒープを渡す際に行うGCのロックについて回答した。

しかし回答に対してwVU/jdLo(>>153
153(1): 名前は開発中のものです。 [] 2013/01/31(木) 12:36:26.25 ID:wVU/jdLo(2/13) AAS
DirectXライブラリならDX7ベースのものを作った。ところで、その口ぶりなら当然
自分もそのぐらいは作ったんだろうな。CPUで演算したデータをバック・スクリーン
サーフェスに転送する場合、ロックもかけず、APIも使わず、どーやーって
転送しているんだ?おしえてくれよ。

スマートポインタ使うと、アプリの速度が上がるとでも言いたいのか?
俺が聞いたのはコーディングの話じゃない。実行上の有利性だ。
)が突然、
DirectXでサーフェスのVRAMをロックする仕方を教えてくれと言い出した。
以後、彼はGCとDirectX、2つの話を同じ話とした誤った前提をもとに得意面で執拗に追及しはじめる。

またwVU/jdLo(>>153)はGCのロックが面倒だという当初の題目(>>146
146(2): 名前は開発中のものです。 [] 2013/01/30(水) 13:13:47.38 ID:ES7+KnHm(1/3) AAS
思うんだが、VBやVC#のガベージコレクタって、そんなにパフォーマンスに
影響するもんなの?

メインメモリを効率良く再配置してくれるといっても、コード組む側からしたら、
ポインタを使うとき、データを勝手に移動されないように、いちいちロックしないと
いけないので、面倒極まりないんですけど。

もしかしたら、メモリの開放忘れてメモリリークさせるバグが多かったので、
それを防止する為につけたのかもしれないけど…。

Vistaのせいかな?あのころ、メモリ不足でパフォーマンスが落ちるPCが多かったからな。
でも .net って Vista より先じゃなかったっけ?
)を覆し、
「俺が聞いたのはコーディングの話じゃない。実行上の有利性だ。(実行速度) 」
などと捏造する。

その後も謎の要求を繰り返す。
「オフスクリーンサーフェスにピクセル配列を転送するコードを書いてみろ。」
「コードを書いたらオマエの勝ちでいい。 できなければオマエの負け。」

しかたがないので、wVU/jdLoが繰り返し要求していたコードを書いた(>>171
171(2): 名前は開発中のものです。 [sage] 2013/01/31(木) 21:35:46.32 ID:NyoQQhH7(12/17) AAS
>オフスクリーンサーフェスにピクセル配列を転送するコード
言い回しが古すぎるね。
Direct3D9ではIDirectSurfaceを直接操作せず、IDirect3DTexture経由で事足りる。
以下、テクスチャを1ドット毎白く塗りつぶす例。

D3DLOCKED_RECT lockRect;
pTexture->LockRect(0, &lockRect, NULL, D3DLOCK_DISCARD);

for(int y=0; y<h; y++)
{
for(int x=0; x<w; x++){
DWORD color = 0x00ffffff;
BYTE* p = (BYTE*)lockRect.pBits + lockRect.Pitch*y + 4*x
memcpy(p, &color, sizeof(DWORD));
}
}

pTexture->UnlockRect(0);
)。
何か意味や目的があるのかしらないが満足したらしく、
ID:wVU/jdLoは意味もなく >>175->>178 を張ったということだ。
前次1-
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル

ぬこの手 ぬこTOP 0.009s