aboutsummaryrefslogtreecommitdiffstats
path: root/Software/Visual_Studio/MachineStudio/Tango.MachineStudio.Common/EventLogging
diff options
context:
space:
mode:
authorMirta <mirta@twine-s.com>2020-09-21 15:13:14 +0300
committerMirta <mirta@twine-s.com>2020-09-21 15:13:14 +0300
commit2faf5e3e5183ab717e28209cd62959d94cd7a073 (patch)
tree62ea2539061dbae5798b18c890cca34e51c580a4 /Software/Visual_Studio/MachineStudio/Tango.MachineStudio.Common/EventLogging
parented9b9c308adeec50bea3eb838de2de3f79c06b0a (diff)
parent6c3ff609e371b103183d01b84567ad6b7b70ef4a (diff)
downloadTango-2faf5e3e5183ab717e28209cd62959d94cd7a073.tar.gz
Tango-2faf5e3e5183ab717e28209cd62959d94cd7a073.zip
Fixed Gradient Bug
Better alloc management
Diffstat (limited to 'Software/Visual_Studio/MachineStudio/Tango.MachineStudio.Common/EventLogging')
-rw-r--r--Software/Visual_Studio/MachineStudio/Tango.MachineStudio.Common/EventLogging/DefaultEventLogger.cs30
1 files changed, 18 insertions, 12 deletions
diff --git a/Software/Visual_Studio/MachineStudio/Tango.MachineStudio.Common/EventLogging/DefaultEventLogger.cs b/Software/Visual_Studio/MachineStudio/Tango.MachineStudio.Common/EventLogging/DefaultEventLogger.cs
index 613b443df..89b8920d9 100644
--- a/Software/Visual_Studio/MachineStudio/Tango.MachineStudio.Common/EventLogging/DefaultEventLogger.cs
+++ b/Software/Visual_Studio/MachineStudio/Tango.MachineStudio.Common/EventLogging/DefaultEventLogger.cs
@@ -29,6 +29,7 @@ namespace Tango.MachineStudio.Common.EventLogging
public class DefaultEventLogger : ExtendedObject, IEventLogger
{
private ObservablesContext _db;
+ private static object _lockInit = new object();
private Thread _logThread;
private ConcurrentQueue<MachinesEvent> _events;
private IStudioApplicationManager _application;
@@ -89,24 +90,27 @@ namespace Tango.MachineStudio.Common.EventLogging
private void Init()
{
- if (!_isInitialized)
+ lock (_lockInit)
{
- try
+ if (!_isInitialized)
{
- _db = ObservablesContext.CreateDefault();
+ try
+ {
+ _db = ObservablesContext.CreateDefault();
+
+ _db.EventTypes.ToList();
- _db.EventTypes.ToList();
+ foreach (var type in _db.EventTypes)
+ {
+ _eventTypesGuids.Add((EventTypes)type.Code, type);
+ }
- foreach (var type in _db.EventTypes)
+ _isInitialized = true;
+ }
+ catch
{
- _eventTypesGuids.Add((EventTypes)type.Code, type);
+ _isInitialized = false;
}
-
- _isInitialized = true;
- }
- catch
- {
- _isInitialized = false;
}
}
}
@@ -210,6 +214,8 @@ namespace Tango.MachineStudio.Common.EventLogging
/// <param name="machineEvent">The machine event.</param>
public void Log(MachinesEvent machineEvent)
{
+ Init();
+
machineEvent.HostName = _hostName;
machineEvent.EventType = _eventTypesGuids[machineEvent.Type];