public static void Example3()
 {
     // using timed task runner with a bunch of variously typed parameters
     var timedProcess =
         new UsingParams.TimedProcess(300,
                                      p => FakeWork.LotsOfParameters(
                                          (string)p[0],
                                          (DateTime)p[1],
                                          (int)p[2]),
                                      "test",
                                      DateTime.Now,
                                      123
                                      );
     var timedProcess2 =
         new UsingGenerics.TimedProcess <LotsOfParameters>(
             300,
             p => FakeWork.LotsOfParameters(
                 p.Name,
                 p.Date,
                 p.Count),
             new LotsOfParameters()
     {
         Name  = "test",
         Date  = DateTime.Now,
         Count = 123
     }
             );
 }
 public static void Example2()
 {
     // using timed task runner with a single typed parameter
     var timedProcess =
         new UsingParams.TimedProcess(300,
                                      p => FakeWork.SingleParameter((string)p[0]),
                                      "test"
                                      );
     var timedProcess2 =
         new UsingGenerics.TimedProcess <StringParameter>(
             300,
             p => FakeWork.SingleParameter(p.Name),
             new StringParameter()
     {
         Name = "test"
     }
             );
 }
 public static void Example1()
 {
     // using timed task runner with no parameters
     var timedProcess  = new UsingParams.TimedProcess(300, FakeWork.NoParameters);
     var timedProcess2 = new UsingGenerics.TimedProcess(300, FakeWork.NoParameters);
 }