Windows.System.Threading.ThreadPoolTimer.ThreadPoolTimer C# (CSharp) Method

ThreadPoolTimer() private method

private ThreadPoolTimer ( TimeElapsedHandler handler, TimeSpan delay, bool isPeriodic ) : System
handler TimeElapsedHandler
delay TimeSpan
isPeriodic bool
return System
		private ThreadPoolTimer (TimeElapsedHandler handler, TimeSpan delay, bool isPeriodic)
		{
			Delay = delay;
			if (isPeriodic)
				Period = delay;

			this.handler = handler;

			this.realTimer = new Timer (t =>
			{
				var ltimer = (ThreadPoolTimer)t;

				if (!ltimer.isCanceled)
				{
					Task.Factory.StartNew (o =>
					{
						ThreadPoolTimer taskedTimer = (ThreadPoolTimer)o;
						taskedTimer.handler (taskedTimer);
					}, ltimer);
				}
			}, this, (int)delay.TotalMilliseconds, (isPeriodic) ? (int)delay.TotalMilliseconds : Timeout.Infinite);
		}