なぜVBは扱いが低いのか (200レス)
上下前次1-新
149: 名前は開発中のものです。 [] 2013/01/30(水) 22:19:16.82 ID:ES7+KnHm(3/3) AAS
 ロックについては、このページを見ておくといいだろ 
 外部リンク[html]:dobon.net 
 ヒトを病人扱いする前に用語のひとつもググってみれば? 
150: 名前は開発中のものです。 [sage] 2013/01/30(水) 23:34:20.46 ID:cZuhgiqX(2/2) AAS
 C#とかVBでわざわざポインタを使うのはdllとの繋ぎ目くらいだろ。 
 (JavaのJNIも同様) 
  
 繋ぎ目を隔離したラッパークラスを通さずに直接ネイティブを呼べば面倒なのは当たり前。 
 いたるところでガベージコレクションをロックするかのようなことを書いて、 
 GCが邪魔だと呟いているのは実に意味不明だ。 
151: 名前は開発中のものです。 [] 2013/01/31(木) 08:48:10.87 ID:wVU/jdLo(1/13) AAS
 cZuhgiqX 
 どうやらロックの意味は理解できたようだな。ひとつ勉強になっただろ。 
  
 では逆に問う。君はGCの利点として何か実感できるものがあるのか? 
  
 GCのある言語とそうでない言語で同じ動作をするプログラムを組んだとして、 
 あきらかにGCの優位性を感じる場面に遭遇できるのはどのようなケースだ? 
  
 ちなみに自分はVB5からのユーザーだが、APIは当たり前のように使っている。 
152(1): 名前は開発中のものです。 [sage] 2013/01/31(木) 12:02:16.21 ID:NyoQQhH7(1/17) AAS
 直接ネイティブを呼びまくること自体が低脳のすることだといってるのに 
 ロックの意味もわかってないからあちこちでロックしまくってるわけだろ。 
 普通の人はそんなことしないので、ロックするといわれてもわかりません。 
  
 DLL、SQLとかVBの外にあるものは隔離して 
 VBのみで完結しているように設計を作るのは基本。 
  
 >APIは当たり前のように使っている。  
 Win32のことか?DirectXラッパぐらい作ってから言えよw 
  
 >GCの利点として何か実感できるもの 
 スマートポインタ(参照カウンタ)を使うようなケース。 
153(1): 名前は開発中のものです。 [] 2013/01/31(木) 12:36:26.25 ID:wVU/jdLo(2/13) AAS
 DirectXライブラリならDX7ベースのものを作った。ところで、その口ぶりなら当然 
 自分もそのぐらいは作ったんだろうな。CPUで演算したデータをバック・スクリーン 
 サーフェスに転送する場合、ロックもかけず、APIも使わず、どーやーって 
 転送しているんだ?おしえてくれよ。 
  
 スマートポインタ使うと、アプリの速度が上がるとでも言いたいのか? 
 俺が聞いたのはコーディングの話じゃない。実行上の有利性だ。 
154: 名前は開発中のものです。 [sage] 2013/01/31(木) 15:29:50.68 ID:NyoQQhH7(2/17) AAS
 >いちいちロックしないと いけないので、面倒極まりないんですけど。  
 >俺が聞いたのはコーディングの話じゃない。アプリの速度だ。  
 生産性の話をしていたのに、突然実行速度の話に変わったな。 
 GCは主に生産性の向上を目的として導入されているのに、おかしな話だ。 
  
 まあGCが得意なパターンにマッチすれば速くもなる。 
 C++でRAIIだと重いdelete()が集中しがちだが、 
 GCだと実際に解放するのを後回しにして、 
 負荷が軽い頃合に並列GCが少しずつ解放してくれたりする。 
155: 名前は開発中のものです。 [sage] 2013/01/31(木) 15:34:54.20 ID:NyoQQhH7(3/17) AAS
 >DirectXライブラリならDX7ベースのものを作った。 
 ならライブラリを使っている限り、アプリケーション層ではAPI(dll)を呼ぶ必要はなく、 
 従ってロックなどしないはずだ。そうでなければライブラリに存在意義がない。 
 ライブラリを作ったような妄想に浸っていただけだったというオチだな。 
156(1): 名前は開発中のものです。 [] 2013/01/31(木) 16:10:41.97 ID:wVU/jdLo(3/13) AAS
 馬鹿だなあ、ライブラリ自体をVBで作ったんだ。 
  
 バックサーフェスのLockメソッドを実行して、引数の構造体からポインタを 
 取得し、APIの movememory を使って転送する。 
  
 ちなみにDX9のフレームバッファに直接書き込む場合は、メソッドがあるので 
 APIは使わないようだが、ロックはしなければならない。 
  
 おまえさんのライブラリではどーやってんのかなあ?答えてないぞ。 
  
 なにしろ>>152で「DirectXラッパぐらい」って言ってんだから、「ぐらい」なんだろ。 
 簡単にできそうじゃねーか?当然作ってあるんだろ 
  
 強がっても本当はDirectXライブラリなんて作った事ないんだろ。まあ昨日までロックを 
 知らなかったんだから無理も無い。 
  
 そのくせ態度だけはでかいんだよな。ヒトを低脳よばわりとかして… 
GCが効果を出すのはごく限られた状況だけ、ほとんどは余計なプロセスが動くだけで 
 STGなんかを作る人からは嫌われている。 
  
 GCがメモリをいじくりまわしても、無造作にメモリ使いまくるコード組んでりゃいつかは 
 足りなくなってスワップするし、ようはスワップがちょっと遅れて来るぐらいの効果しか期待できない。 
  
 とりあえず自分で「ぐらい」と言った「DXライブラリ」作ってみそ。そしたら少しは認めてやるわ。 
157(1): 名前は開発中のものです。 [sage] 2013/01/31(木) 17:50:35.50 ID:NyoQQhH7(4/17) AAS
 俺はお前の先生じゃないからな。 
 初心者に1から10まで教えたりはしない。 
  
 あと話がコロコロかわるわ、分散するわ、人の書いたことが理解できないわ、 
 そんなお前と話をしても漠然と広がるばかりで一向に収束しない。 
 理由は単純、ID:wVU/jdLoがなりふり構わず言い返したいだけだからだ。 
 何がしたいの?そんなにくやしかった? 
158: 名前は開発中のものです。 [] 2013/01/31(木) 18:37:22.22 ID:wVU/jdLo(4/13) AAS
 「DXライブラリなら作ってある!!」と言い返せないんだな。 
  
 そして「ロックを使わずにピクセルデータをバックサーフェスに転送できる!!」とも言えないんだな 
  
 くやしいのう。くやしいのう。 
>俺はお前の先生じゃないからな。 
 >初心者に1から10まで教えたりはしない。 
  
 じゃあひとつだけでいいよ。 
 ロックを使わずにピクセルデータをCPUからバックサーフェスに転送できる方法 
 とやらを教えてくれ。 
  
 コードを表示してこっちで試して正しく動作したらオマエの勝ちでいい。 
 できなければオマエの負け。 
  
 オレはロック使わないと絶対にできないと思ってる初心者だから、先生よろしくたのむよ 
  
 …しかしコイツ本当に一度でもDirectXのコード組んだことあんのかよ? 
 APIも使ったことないんじゃねーの? 
  
 どっちが初心者だよまったく…バカじゃねーの? 
159: 名前は開発中のものです。 [sage] 2013/01/31(木) 19:51:45.92 ID:NyoQQhH7(5/17) AAS
 何言ってんだこいつ。日本語が不自由な上に統合失調症の傾向がある。  
 ロックするとか意味不明だし、プログラム向いてないから病院いっとけ。 
160: 名前は開発中のものです。 [] 2013/01/31(木) 19:55:05.86 ID:PSRqcy7K(1) AAS
 VB使いって・・・ 
161(1): 名前は開発中のものです。 [sage] 2013/01/31(木) 20:05:52.91 ID:NyoQQhH7(6/17) AAS
 >ライブラリ自体をVBで作ったんだ。  
 こんな事書いてる辞典でお前がライブラリなんか作れないことは自明のこと。 
 一個一個ロックしてコールバック呼ぶ間抜けな姿が目に浮かぶわw 
  
 DirectXで頂点バッファとかVRAM転送に関するロックと 
 マネージコード(VB, C#, Java)のGCに関するロックは全く違う話だってのもわからないだろ? 
 初心者が強がったところでまたひとつ恥をかいてるよ。バカじゃねーの? 
162: 名前は開発中のものです。 [sage] 2013/01/31(木) 20:14:38.35 ID:NyoQQhH7(7/17) AAS
 >オマエの勝ちでいい。  
 そうだな。俺の完全勝利ってこと。 
 普通にロックなんて誰もしないものw 
  
 おかしな知ったかぶりでGCを批判するぐらいなら 
 全部C++で書けばいんじゃないの?  
 ロックせずにコールバック呼べるよ〜?w 
163: 名前は開発中のものです。 [sage] 2013/01/31(木) 20:24:02.19 ID:NyoQQhH7(8/17) AAS
 そう、ID:wVU/jdLoは完全に負けたんだよ。 
 俺のC#ライブラリを使う限り、誰もGCロックなんてしないし、 
 SlimDXやMDX、XNAなど普通のライブラリやフレームワークはみ〜んなそう。 
 ついで抽象度を高めればDirectXのロックもライブラリ層で消せますな。 
  
 低脳ライブラリではコールバックの名前が変わっただけで隠蔽性も何もなく、 
 ロックしてまわるそうです。一体何のためのライブラリなのか謎ですな(苦笑) 
164: 名前は開発中のものです。 [] 2013/01/31(木) 20:31:31.28 ID:wVU/jdLo(5/13) AAS
 オマエ…DirectX7を知らないのか…絶句…アホ。 
165: 名前は開発中のものです。 [sage] 2013/01/31(木) 20:35:28.34 ID:NyoQQhH7(9/17) AAS
 ネイティブコードに関する規模の大きいライブラリを作るなら、 
 dll(C)側とコネクタとなるマネージコード側の両方を書くのは必須。 
 これ知識というより普通は気付く。 
  
 低脳にも理解できたかな? ひとつ勉強になっただろ。  
 先生にありがとうございましたって、しっかり頭下げとけよw 
166: 名前は開発中のものです。 [sage] 2013/01/31(木) 20:38:03.52 ID:NyoQQhH7(10/17) AAS
 こっちはDX9のDirect3Dを前提に話をしているが、 
 DirectDrawでも話の芯は全く同じだ。 
167: 名前は開発中のものです。 [] 2013/01/31(木) 20:42:24.50 ID:wVU/jdLo(6/13) AAS
 じゃあオフスクリーンサーフェスにピクセル配列を転送するコード 
 を書いてみろ。 
168: 名前は開発中のものです。 [] 2013/01/31(木) 20:45:12.55 ID:wVU/jdLo(7/13) AAS
 >>156でも書いたが、取得できるのはポインタだぞ。その後どうするつもりだ? 
169: 名前は開発中のものです。 [sage] 2013/01/31(木) 20:57:12.63 ID:NyoQQhH7(11/17) AAS
 ハハハ、まだそんなこといってるのか。 
 DirectXなんて時間かかって面倒くさいだけで、 
 可能・不可能を論じれば誰でもできる簡単なことだからな。 
  
 完全勝利 
170: 名前は開発中のものです。 [] 2013/01/31(木) 21:05:54.09 ID:wVU/jdLo(8/13) AAS
 アホすぎる…もういいよオマエは。 
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); 
172: 名前は開発中のものです。 [sage] 2013/01/31(木) 21:38:38.53 ID:NyoQQhH7(13/17) AAS
 ライブラリを作るなら、例えば次のようにラップされ、 
 ライブラリユーザーは"ロックなど不可視"なはずだ。 
  
 virtual void FillTexture(int rgbColor) = 0; 
173: 名前は開発中のものです。 [sage] 2013/01/31(木) 21:42:04.76 ID:NyoQQhH7(14/17) AAS
 あっちゃ〜、こりゃまた完全勝利してもうたわぁ〜。 
  
 低脳にも理解できたかな? ひとつ勉強になっただろ。  
 先生にありがとうございましたって、しっかり頭下げとけよw 
上下前次1-新書関写板覧索設栞歴
あと 27 レスあります
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル
ぬこの手 ぬこTOP 0.770s*