我有項目中,我使用了大量的通過JNI訪問現有的C++代碼,打開和關閉插座開發Android應用程序。如何強制Android垃圾收集舊的套接字信息?
即使這個C++正確處理它打開插座的closeing,看來無論是Android操作系統或JVM保持周圍這些插槽引用/正在使用的端口直到下一次GC調用。
會發生什麼,如果我們停止應用程序,並再次啓動它的下一個GC調用之前,應用程序不能創建同一插座/端口上的連接。如果我們等待GC由OS調用和然後重新啓動應用程序,它成功地創建了連接。
有沒有辦法手動釋放從Android的/ JVM的角度來看,插座?也許是套接字類實用程序?手動呼叫GC?
你是對的,它的setsockopt()而不是ioctl() – 2010-12-06 07:00:40
感謝。這是我希望我在調試前要求50個工作小時的問題的答案... – Dfowj 2010-12-06 19:49:36