2008-10-29 47 views
3

當在CLI模式下運行PHP時,時間最多(不總是),腳本將在執行結束時掛起約5秒鐘,然後輸出這樣的:PHP:my_thread_global_end()中的錯誤:1個線程沒有退出

Error in my_thread_global_end(): 1 threads didn't exit

它似乎並沒有真正對腳本本身沒有任何影響。

一些網絡搜索發現了一些博客,建議用不同的版本替換php_mysql.dll,但這並沒有解決我的問題,我懷疑這些博客的信息現在已經過時。

我的設置:

  • PHP版本5.2.4
  • 的Apache/2.2.4(Win32的)
  • Windows Vista家庭高級版SP1

回答

0

你看看this resource ?你可能要仔細檢查一下你是否有一個不受此影響的特定libmysql.dll(5.2.1),並仔細檢查一下,你是否沒有任何散佈的mysql庫存在於PHP可能正在拾取的位置。或者,如果這是您的選擇,請從FastCGI切換。

爲了感興趣,該錯誤似乎是最好的詳細here。問題(從MySQL錯誤鏈接)的總體思路似乎是:

Whenever a new thread is created libmysql is told about that by Windows. It then  
increases a thread counter and initializes some data. When libmysql is being unloaded 
it checks whether all threads have finished, if not it tries to tell them "close now" 
and gives them 5 seconds for that. In general this works in a nice way. 
+0

嘿,好色! :-p嘗試使用blockquote(「> text」)而不是使用語法突出顯示的縮進。 – 2010-07-31 18:41:03

1

無需降級整個PHP版本,剛剛從PHP 5.2.1版本 &事情應該是滾動:)參考this link更多信息更換的libmysql.dll