• Amlan Nayak's avatar
    Use WorkersProvider in CPUThreadPoolWorker to collect thread IDs · 7c93aeb3
    Amlan Nayak authored
    Summary:
    The WorkersProvider can be used to collect OS thread IDs of all active
    threads consuming tasks from the CPUThreadPoolExecutor queue. The
    WorkersProvider::KeepAlive holds a read lock for the `osThreadIds_` list here to
    block the active threads from exiting (they will need to acquire a wlock on the same list on exit)
    while the observer captures the backtraces.
    The actual logic to captures the traces in coming in a subsequent diff.
    
    Reviewed By: mshneer
    
    Differential Revision: D30133823
    
    fbshipit-source-id: 5bcdc52c55077b53fe8ec3be6d2413cac4436125
    7c93aeb3
ThreadPoolExecutorTest.cpp 31.6 KB