Add QutexAcquisitionHistoryTracker; integrate plumbing
We add the new Qutex acquisision history tracker that allows us to dynamically detect qutex gridlocks. We've integrated it into LockerAndInvoker::operator() in a preliminary way. We also moved all of the trace*ForGridlockOn() methods into the new QutexAcquisitionHistoryTracker singleton class. They're more appropriately located there. They're still unimplemented though.
This commit is contained in:
@@ -13,8 +13,12 @@ namespace smo {
|
||||
*
|
||||
* The chain walking logic can use dynamic_cast to determine the most
|
||||
* derived type and perform appropriate operations.
|
||||
*
|
||||
* Inherits from enable_shared_from_this to allow objects to obtain a
|
||||
* shared_ptr to themselves, which is useful for gridlock detection tracking.
|
||||
*/
|
||||
class AsynchronousContinuationChainLink
|
||||
: public std::enable_shared_from_this<AsynchronousContinuationChainLink>
|
||||
{
|
||||
public:
|
||||
virtual ~AsynchronousContinuationChainLink() = default;
|
||||
|
||||
Reference in New Issue
Block a user