static void Main(string[] args) { PrintLegend(); // Configure and open the host gateway ServiceHost host1 = new ServiceHost(typeof(WorkService)); host1.Open(); ColorConsole.WriteLine(ConsoleColor.Green, "WorkService is running."); // Configure and open the local gateway ServiceHost host2 = new ServiceHost(typeof(ObjectPooledWorkService)); host2.Open(); ColorConsole.WriteLine(ConsoleColor.Green, "ObjectPooledWorkService is running."); Console.WriteLine("Press <ENTER> to exit."); Console.ReadLine(); host1.Close(); host2.Close(); }
static void CallObjectPooledWorkService() { ChannelFactory <IDoWork> channelFactory = new ChannelFactory <IDoWork>("ObjectPooledWorkService"); IDoWork channel = channelFactory.CreateChannel(); ColorConsole.WriteLine(ConsoleColor.Blue, "Calling ObjectPooledWorkService:"); Stopwatch stopwatch = new Stopwatch(); stopwatch.Start(); // Call the service method for 5 times for (int i = 1; i <= 5; i++) { channel.DoWork(); ColorConsole.WriteLine(ConsoleColor.Blue, "{0} - DoWork() Done", i); } stopwatch.Stop(); ColorConsole.WriteLine(ConsoleColor.Blue, "Calling ObjectPooledWorkService took: " + stopwatch.ElapsedMilliseconds.ToString() + " ms."); ((IClientChannel)channel).Close(); }
public void DoWork() { ColorConsole.WriteLine(ConsoleColor.Blue, "ObjectPooledWorkService.GetData() completed."); }
public ObjectPooledWorkService() { Thread.Sleep(5000); ColorConsole.WriteLine(ConsoleColor.Blue, "ObjectPooledWorkService instance created."); }
public void DoWork() { ColorConsole.WriteLine(ConsoleColor.Yellow, "WorkService.GetData() completed."); }
public WorkService() { Thread.Sleep(5000); ColorConsole.WriteLine(ConsoleColor.Yellow, "WorkService instance created."); }