public MainDomSemaphoreLock(ILogger <MainDomSemaphoreLock> logger, IHostingEnvironment hostingEnvironment) { var mainDomId = MainDom.GetMainDomId(hostingEnvironment); var lockName = "UMBRACO-" + mainDomId + "-MAINDOM-LCK"; _systemLock = new SystemLock(lockName); var eventName = "UMBRACO-" + mainDomId + "-MAINDOM-EVT"; _signal = new EventWaitHandle(false, EventResetMode.AutoReset, eventName); _logger = logger; }
public MainDomSemaphoreLock(ILogger <MainDomSemaphoreLock> logger, IHostingEnvironment hostingEnvironment) { if (!RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { throw new PlatformNotSupportedException("MainDomSemaphoreLock is only supported on Windows."); } var mainDomId = MainDom.GetMainDomId(hostingEnvironment); var lockName = "UMBRACO-" + mainDomId + "-MAINDOM-LCK"; _systemLock = new SystemLock(lockName); var eventName = "UMBRACO-" + mainDomId + "-MAINDOM-EVT"; _signal = new EventWaitHandle(false, EventResetMode.AutoReset, eventName); _logger = logger; }