public static void Remove(IntPtr formHandle) { if (!ContainsKey(formHandle)) { return; } try { wndHandleHashtable.Remove(wndHandleHashtable.First(x => x.Key.Equals(formHandle))); } catch (Exception ex) { Lib.Win.Data.Env.WriteToLog(ex, "Error while removing " + formHandle.ToString() + " from wndHandleHashTable"); } if (timer != null && wndHandleHashtable.Count == 0) { timer.Elapsed -= timer_Elapsed; timer.Stop(); timer = null; } }
internal static void AddPluginToRunning(IPlugin3 plugin, WowProcess process) { lock (AddRemoveLock) { if (!RunningPlugins.Contains(plugin)) { _pluginContainers.First(l => l.Plugin.GetType() == plugin.GetType()).IsRunning = true; try { plugin.OnStart(new GameInterface(process)); PluginWoW[plugin.Name] = process.ProcessID; PluginsUsageStats[plugin.Name].Add(DateTime.UtcNow); SavePluginUsageStats(); log.Info($"{process} [{plugin.Name}] Plug-in is started"); } catch (Exception ex) { log.Error($"Plug-in OnStart error [{plugin.Name}]: {ex.Message}"); } Notify.TrayPopup(nameof(AxTools), "Plug-in <" + plugin.Name + "> is started", NotifyUserType.Info, false, plugin.TrayIcon); PluginStateChanged?.Invoke(plugin); } } }
public string FetchJobForScanning() { if (mSmallJobs.Count != 0) { if (SmallCounter != 0 || (mMediumJobs.Count == 0 && mBigJobs.Count == 0)) { var job = mSmallJobs.First(); object temp; mSmallJobs.TryRemove(job.Key, out temp); SmallCounter--; if (SmallCounter < 0) { SmallCounter = 0; } return(job.Key.mFilePath); } } if (mMediumJobs.Count != 0) { if (MediumCounter != 0 || mBigJobs.Count == 0) { var job = mMediumJobs.First(); mMediumJobs.RemoveAt(0); MediumCounter--; if (MediumCounter < 0) { MediumCounter = 0; } return(job.mFilePath); } } if (mBigJobs.Count != 0) { var job = mBigJobs.First(); mBigJobs.RemoveAt(0); SmallCounter = 5; MediumCounter = 3; return(job.mFilePath); } return(null); }
public static void Remove(Form form) { if (!ContainsKey(form.Handle) && !Contains(form)) { return; } try { if (ContainsKey(form.Handle)) { wndHandleHashtable.Remove(wndHandleHashtable.First(x => x.Key.Equals(form.Handle))); } } catch (Exception ex) { Lib.Win.Data.Env.WriteToLog(ex, "Error while removing " + form.Handle.ToString() + " from wndHandleHashTable"); } try { if (Contains(form)) { answerCollection.Remove(answerCollection.First(x => x.Form.Equals(form))); } } catch (Exception ex) { Lib.Win.Data.Env.WriteToLog(ex, "Error while removing " + form.Name.ToString() + " from wndHandleHashTable"); } if (timer != null && (wndHandleHashtable == null || wndHandleHashtable.Count == 0) && (answerCollection == null || answerCollection.Count == 0)) { timer.Elapsed -= timer_Elapsed; timer.Stop(); timer = null; } }