private static void TestSync() { Client c = new Client(TimeSpan.FromSeconds(5), TimeSpan.FromSeconds(3)); c.Error += (sender, errorArgs) => { Console.WriteLine($"Error: {errorArgs.Info}"); }; c.Connect("tcp://127.0.0.1:1234"); string s = c.Invoke <string>("strftime", "%Y/%m/%d"); Console.WriteLine($"Got time: {s}"); Console.WriteLine("Fail test:"); try { c.Invoke("asd", "%Y/%m/%d"); } catch (Exception e) { Console.WriteLine(e); } var clock = c.CreateDelegate <double>("clock"); double t = 0; double prevTime = -1; for (int i = 0; i < 10; i++) { double cc = clock(); if (prevTime > 0) { t += cc - prevTime; } prevTime = cc; Console.WriteLine($"Clock {i + 1}: {cc}"); } Console.WriteLine($"Average wait: {t / 9} seconds"); c.Dispose(); Console.WriteLine("Done"); Console.ReadKey(); }