DllMain相關注意事項

2021-05-28 00:54:44 字數 512 閱讀 1878

1、在dllmain的dll_process_attach分支中,盡量只呼叫kernel32.dll中的函式。因為其他系統api可能依賴於其他dll,而那些dll有可能還沒有被載入到程序空間中且依賴於當前dllmain所在的dll,這樣會導致迴圈依賴;

其實,在使用者程序中呼叫其他系統模組的api一般情況下不會導致迴圈依賴。因為,系統的dll不會依賴於我們的dll。但是如果使用的api是另外乙個使用者dll提供的,那就要小心那個dll依賴於當前dll。

2、在dllmain中盡量不要loadlibrary系統外的其他dll。

原因跟第一點一樣。

3、為了同步多個執行緒對dllmain的呼叫,系統使用了乙個程序唯一的mutex(互斥量)進行同步。所以,在dllmain中不要等待任意乙個執行緒的控制代碼,否則會導致死鎖。

4、在dllmain中建立執行緒是安全的。因為createthread函式是由kernel32.dll提供的,系統可以保證進入任意乙個dllmain前kernel32.dll已經被載入。所以,不會造成迴圈依賴,也不會造成死鎖。

git相關注意事項

git的相關注意事項 git add 新增所有修改到暫存區。git reset head file add之後發現錯誤,撤銷 add的檔案到暫存區。git add file後進行 git commit m 修改某某檔案 後發現錯誤 要撤銷。解決方式 git log 檢視提交到暫存區的 commit ...

Hive相關注意事項

1.load data locall inpath into table xx 如果是本地路徑,其實就是一次put上傳操作 如果路徑是hdfs,其實是一次mv操作 2.建立分割槽表partitioned by 字段不能和表中列的字段重複 3.建立分桶表cluster by 必須是表中的某列的字段 4...

求職相關注意事項

昨天聽的一場求職講座,以下是相關要點,之後再綜合其他資料進行修改,更新。關於簡歷 1.簡歷檔案命名 求職崗位 學校 姓名。3.相關經歷 根據崗位填寫自身相關的。採用star法則 情境 situation 任務 task 行動 action 結果 result 例子 2012.02 2012.06 網...