First pass at making activity description more flexible by refactoring how activity description are stored.
CoroutineUtil: minor clean-up based on Resharper feedback
DreamActivityDescription:
* capture date-time at creation and don't modify thereafter
* since we're updating a single string reference, we don't need to lock it, but we do treat it as volatile
AsyncUtil:
* added method to obtain stack trace from another thread
* added tracking of threads created so they can be enumerated
DispatchThread: use new AsyncUtil.CreateThread() method
GlobalClock: use new AsyncUtil.CreateThread() method
DreamHostService: added GET:status/timers feature
GetStackTrace(Thread, Bool) does not exist on Mono. :(
Minor reshaper updates.
HttpPlugEndpoint: missed a case where activity descriptions were used
Threads now track their own thread-data for thread-status reporting purposes.
First pass at making activity description more flexible by refactoring how activity description are stored.
DreamActivityDescription:
* capture date-time at creation and don't modify thereafter
* since we're updating a single string reference, we don't need to lock it, but we do treat it as volatile
AsyncUtil:
* added method to obtain stack trace from another thread
* added tracking of threads created so they can be enumerated
DreamHostService: added GET:status/timers feature
GetStackTrace(Thread, Bool) does not exist on Mono. :(
Minor reshaper updates.
Threads now track their own thread-data for thread-status reporting purposes.
removed AsyncUtil.GetStackTrace() since it was dangerous under .Net and didn't work at all under mono; AsyncUtil.ThreadData setter now checks if thread-data is supported before attempting to set it.
cleaned up how ThreadData is created and stored; fixed a bug in GET:status/threads that was not accessing the proper thread-data
implemented work-around for IPGlobalProperties.GetIPGlobalProperties() not being supported on mono 3.4 for OSX