2014-05-15, 23:34
Is there a more effective way of debugging the XBMC (multithreaded project) other than using the freeze/thaw options within the Threads window?
Currently debugging in VC++2010 Express. The reason I ask is because I am trying to isolate where an operation on the MainThread is switched to an operation on the JobWorker thread.
I am testing two cases: 1) playing a CD from the internal disc drive and 2) playing a CD from an external disc drive (USB 2.0).
For case 1), the last operation of the MainThread occurs at ln650 in WinEventsWin32.cpp and then the operation switched to JobWorker ln44 in CDDADirectory.cpp.
For case 2), the last operation of the MainThread occurs at ln650 in WinEventsWin32.cpp after which a dialog appears asking for a CD to be inserted, even if one has already been inserted. Once the CD is reinserted the same dialog appears. Procedurally, the JobWorker thread is not invoked and ln44 in CDDADirectory.cpp is never executed for this case. This is a bug and would appreciate any input you may have.
Currently debugging in VC++2010 Express. The reason I ask is because I am trying to isolate where an operation on the MainThread is switched to an operation on the JobWorker thread.
I am testing two cases: 1) playing a CD from the internal disc drive and 2) playing a CD from an external disc drive (USB 2.0).
For case 1), the last operation of the MainThread occurs at ln650 in WinEventsWin32.cpp and then the operation switched to JobWorker ln44 in CDDADirectory.cpp.
For case 2), the last operation of the MainThread occurs at ln650 in WinEventsWin32.cpp after which a dialog appears asking for a CD to be inserted, even if one has already been inserted. Once the CD is reinserted the same dialog appears. Procedurally, the JobWorker thread is not invoked and ln44 in CDDADirectory.cpp is never executed for this case. This is a bug and would appreciate any input you may have.