aboutsummaryrefslogtreecommitdiff
path: root/src/ARMeilleure/Instructions/InstEmitSimdMemory.cs
diff options
context:
space:
mode:
authorjhorv <38920027+jhorv@users.noreply.github.com>2023-05-21 15:28:51 -0400
committerGitHub <noreply@github.com>2023-05-21 21:28:51 +0200
commit21e88f17f6ebeeae61c3aa95d610ee7adf48d62c (patch)
tree4fbb7f3bb687984f19c707432fb68796c96c03ea /src/ARMeilleure/Instructions/InstEmitSimdMemory.cs
parent5626f2ca1c49342b20772224f956147df6957b5a (diff)
ServerBase thread safety (#4577)1.1.813
* Add guard against ServerBase.Dispose() being called multiple times. Add reset event to avoid Dispose() being called while the ServerLoop is still running. * remove unused usings * rework ServerBase to use one collection each for sessions and ports, and make all accesses thread-safe. * fix Logger call * use GetSessionObj(int) instead of using _sessions directly * move _threadStopped check inside "dispose once" test * - Replace _threadStopped event with attempt to Join() the ending thread (if that isn't the current thread) instead. - Use the instance-local _selfProcess and (new) _selfThread variables to avoid suggesting that the current KProcess and KThread could change. Per gdkchan, they can't currently, and this old IPC system will be removed before that changes. - Re-order Dispose() so that the Interlocked _isDisposed check is the last check before disposing, to increase the likelihood that multiple callers will result in one of them succeeding. * code style suggestions per AcK77 * add infinite wait for thread termination
Diffstat (limited to 'src/ARMeilleure/Instructions/InstEmitSimdMemory.cs')
0 files changed, 0 insertions, 0 deletions