public static void Start(string[] args) { if (args.Length != 1) { throw new ArgumentException( "Expected a single command line argument representing the named pipe name prefix of the child process."); } var pipeNamePrefix = args[0]; Console.WriteLine("Child process is starting..."); var handler = Proliferate.RequestHandlerFactory.FromTaskReturning(Handler); var server = new Proliferate.ProliferateServer(handler, 1, pipeNamePrefix); var cancelTokenSrc = new System.Threading.CancellationTokenSource(); const bool waitForReadKey = false; if (waitForReadKey) { server.RunAsync(cancelTokenSrc.Token); Console.WriteLine("Press any key to exit."); Console.ReadKey(); } else { server.Run(cancelTokenSrc.Token); } }
public static void Start(string[] args) { var pipeNamePrefix = args[0]; var handler = Proliferate.RequestHandlerFactory.FromAction(TestHandler); var server = new Proliferate.ProliferateServer(handler, 10, pipeNamePrefix); var cancelTokenSrc = new System.Threading.CancellationTokenSource(); server.Run(cancelTokenSrc.Token); }