SetExpression() приватный Метод

private SetExpression ( System.Action expression ) : void
expression System.Action
Результат void
Пример #1
0
		public static Task Run(Action expression)
#endif
		{
			Task task = new Task();

			Action inline = () =>
			{
				expression();

				lock (taskMutex)
				{
					tasks.Remove(task);
				}
			};

			task.SetExpression(inline);

#if NETFX_CORE
			return System.Threading.Tasks.Task.Run(async () =>
			{
				inline();
			});
#else

			task.thread.Start();

			lock (taskMutex)
			{
				tasks.Add(task);
			}

			return task;
#endif
		}
Пример #2
0
        public static Task Run(Action expression)
#endif
        {
            Task task = new Task();

            Action inline = () =>
            {
                expression();

                lock (taskMutex)
                {
                    tasks.Remove(task);
                }
            };

            task.SetExpression(inline);

#if NETFX_CORE
            return(System.Threading.Tasks.Task.Run(async() =>
            {
                inline();
            }));
#else
            task.TrackedThread.Start();

            lock (taskMutex)
            {
                tasks.Add(task);
            }

            return(task);
#endif
        }
Пример #3
0
        public static Task Run(Action expression, int delayOrSleep = 0)
#endif
        {
            Task task = new Task();

            Action inline = () =>
            {
#if !NETFX_CORE
                Thread.Sleep(delayOrSleep);
#endif

                expression();

                lock (taskMutex)
                {
                    tasks.Remove(task);
                }
            };

            task.SetExpression(inline);

#if NETFX_CORE
            return(System.Threading.Tasks.Task.Run(async() =>
            {
                await System.Threading.Tasks.Task.Delay(delayOrSleep);

                inline();
            }));
#else
            task.TrackedThread.Start();

            lock (taskMutex)
            {
                tasks.Add(task);
            }

            return(task);
#endif
        }