生活随笔
收集整理的這篇文章主要介紹了
UDT源码剖析(五):UDT::cleanup()过程代码注释
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
調用路線
UDT::cleanup()->CUDT::cleanup()->CUDTUnited::cleanup()
| 1 | int?CUDTUnited::cleanup() |
| 4 | ???CGuard gcinit(m_InitLock); |
| 7 | ???if?(--m_iInstanceCount > 0) |
| 10 | ???//destroy CTimer::EventLock |
| 11 | ???// 如果垃圾收集沒有啟動,則到此為止了 |
| 18 | ???// pthread_cond_signal及SetEvent,立即釋放一個解鎖信號 |
| 19 | ???// pthread_join及WaitForSingleObject,等待GC線程結束 |
| 22 | ??????pthread_cond_signal(&m_GCStopCond); |
| 23 | ??????pthread_join(m_GCThread, NULL); |
| 24 | ??????pthread_mutex_destroy(&m_GCStopLock); |
| 25 | ??????pthread_cond_destroy(&m_GCStopCond); |
| 27 | ??????SetEvent(m_GCStopCond); |
| 28 | ??????WaitForSingleObject(m_GCThread, INFINITE); |
| 29 | ??????CloseHandle(m_GCThread); |
| 30 | ??????CloseHandle(m_GCStopLock); |
| 31 | ??????CloseHandle(m_GCStopCond); |
| 35 | ???m_bGCStatus =?false; |
| 37 | ???// Global destruction code |
| 38 | ???// winsock的釋放函數,與WSAStartup配對 |
總結
以上是生活随笔為你收集整理的UDT源码剖析(五):UDT::cleanup()过程代码注释的全部內容,希望文章能夠幫你解決所遇到的問題。
如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。