Visual Studio 2005スレ Part14 at TECH
[2ch|▼Menu]
744:デフォルトの名無しさん
06/08/09 18:55:44
>>733-734
どうして__declspec(thread)を外すなんて思考に行き着いたのかは知らんが、
そんなもんが付いてる以上は、それってTLSだろ?
ブチ落ちてたのはDLLの中の話だったりしないか?
ランタイムで後から読み込んだDLLの中で__declspec(thread)使ってると
オブジェクトの内容なんか保証されないぞ。
URLリンク(msdn2.microsoft.com)
の一番最後のところだ。

__declspec(thread) char sz[1000];
BOOL APIENTRY DllMain( HANDLE hModule, DWORD ul_reason_for_call, LPVOID lpReserved)
{
for(int i=0; sizeof(sz)/sizeof(sz[0])>i; ++i) sz[i] = 0;
return TRUE;
}

こんなDLLをLoadLibrary()するだけで落とせる。
落ちない可能性もあるが、いずれにせよsz周辺のメモリは確保なんかされてないので、
動いててもただの偶然だ。


次ページ
続きを表示
1を表示
最新レス表示
スレッドの検索
類似スレ一覧
話題のニュース
おまかせリスト
▼オプションを表示
暇つぶし2ch

4226日前に更新/224 KB
担当:undef