ZeroGram ゲームプログラミングの素 Twitter zerogram@zerogram_info YouTubeチャンネル youtube.com/channel/UC-EHxLtAVq7qKk5YMivoGSA note note.com/zerogram0g お知らせ 2024/1/9 閉鎖しました。 noteで活動してます。 note note.com/zerogram0g
Linux環境では1秒以下で動くライブラリ(TriStripper)が、なぜかWindows環境だと4分30秒と約1000倍遅かった。 何でだろうと調べること2時間、ようやく原因が分かった。 STLを「マルチスレッド デバッグなDLL(/MDd)」(ようするにデバッグ版)で使うと死ぬほど遅い!! リリース版1000倍ぐらい。 デバッガーでSTLのコードに入り込んでソースを見ると、どうも_ITERATOR_DEBUG_LEVEL=2が定義されているとMutexを取ったり解放しながら範囲チェックをしているのが問題らしい。 試しにプロジェクトを右クリックして「C/C++」-「プリプロセッサ」-「プリプロセッサの定義」の所に_ITERATOR_DEBUG_LEVEL=1を付け加えてコンパイルし直したらリリース版とほぼ同じ1秒以下で動作した。めでたしめでたし。 ちなみに複数のプロジェクトからなるソリ
解説 MSXML を利用して XMLファイル を解析する方法をまとめます。 便利機能 ・IXMLDOM~Ptr を使う MSXMLの処理においては、IXMLDOM~型のオブジェクトを扱います。 IXMLDOM~型には、型名の語尾にPtrが「付く」型と、「付かない」型があります。 型名の語尾にPtrが「付く」型は、スマートポインタ型なので、特に理由がない限り、型名の語尾にPtrが「付く」型を使います。 型名の語尾にPtrが「付かない」型を使う場合には、オブジェクトが不要になった際には Release関数を呼び出す、型変換は QueryInterface関数を通して行う、等が必要になります。 ・CComVariant、CComBSTRを使う MSXMLの処理においては、BSTR型やVARIANT型のオブジェクトを扱います。 BSTR型やVARIANT型には、ラッパークラスである、CComVar
Out of the Angle Brackets Xslt 1.0 biggest issues (kind of) solved Xslt 1.0 has a number of issues that can make the life of an Xml developer frustrating. A lot of... Author: XmlTeam Date: 10/09/2011 The world has moved on, have you? Xml APIs you should avoid using. There is a few Xml APIs you should not be using. In some cases the complier makes this obvious – the... Author: XmlTeam Date: 10/08/2
getNodeName. String getNodeName(). このノードの名前です。この名前は型によって異なります。上記の表を参照してください。 getNodeValue. String getNodeValue ...
ちょっと、ディープなネタです。 WinDbg でダンプファイル解析を行う際、OS のシンボル情報が必要になります。 ダンプファイルを開いた際、シンボル情報が読み込めないと、 のように、”シンボル情報がないよ” と表示されてしまいます。 このまま進めていっても、ntdll.dll のシンボル情報がないので解析するのが非常に困難です。 きちんとシンボル情報を読み込ませると となります。 シンボル情報を含んでいるシンボルサーバーは、Microsoft がインターネット上で公開していますので 通常は、それを使えば何も問題はありません。 Microsoft が公開しているシンボル情報の URL http://msdl.microsoft.com/download/symbols WinDbg でこれを指定する場合には、File – Symbol File Path メニューで シンボルをキャッシュし
こいつが上記のサイトに書いてなくてハマった。 MSXMLで作ったノード関連のオブジェクトの後処理は普通 Release(); だと思うんだけど、私の場合はエラー出た。そこでこちらさんで紹介されてたやり方(『MSXMLを使う』)より、 Node = NULL;と、NULL代入の方法に変更する。まーどっかで私のやり方が間違ってるんだろーけどさー。 書いたコード(の一部)を恥ずかしげもなくさらす。自分がネット上を探してるときに、他の人のコードがとてもありがたかったから。例外処理は_com_errorで受ける。 MSXML2::IXMLDOMDocument2Ptr pDoc; MSXML2::IXMLDOMElementPtr pRoot; try{ pDoc.CreateInstance(MSXML2::CLSID_DOMDocument); pDoc->put_async(VARIANT_F
1. はじめに 2. Windowsのマルチスレッド設備 3. 同期オブジェクトの保護対象 4. マルチスレッドの病理 5. マルチスレッドデバッギング – 実行時テストによる 6. マルチスレッドデバッギング – クラッシュダンプの分析 7. 広義のカーネルオブジェクトとしてのCRITICAL_SECTION 8 . おわりに はじめに Intel Corp.によるHyper-Threading Technology導入により、マルチスレッドアプリケーションがMicrosoft Windows®上で効力を発揮する機会がさらに増えることが予想される。Windowsにおける従来のメインストリームとしての、デスクトップでの個人利用を前提としたGUIアプリケーションでは、マルチスレッドといってもせいぜいワーカスレッドを作業の度に生成してシングルユーザに対するユーザイン ターフェイス
A little guide about modern OpenGL and why it gives us so much value. Introduction Ok... so you want to learn modern OpenGL. Great! But what does it really mean and what options are available? Do you have to buy expensive books about this technology, or maybe some basic online tutorials are enough? In this article, I will try to answer some of the questions above and create a guide to a wonderful
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く