public void Run(object o) { while (true) { if (!_nodeInfo.HaveAcessRight) { break; } if (!PureCatClient.IsInitialized()) { Thread.Sleep(5000); continue; } PureCatClient.DoTransaction("System", "Status", () => { _nodeInfo.Refresh(); PureCatClient.GetProducer().LogHeartbeat("Heartbeat", AppEnv.IP, PureCatConstants.SUCCESS, XmlHelper.XmlSerialize(_nodeInfo, Encoding.UTF8)); PureCatClient.GetProducer().LogEvent("System", $"PureCat.Version : {PureCatClient.Version}", PureCatConstants.SUCCESS, PureCatClient.Version); }); Thread.Sleep(60000); } }
static void Add(int a, int b, CatContext context = null) { Thread.Sleep(_rand.Next(1000)); PureCatClient.LogRemoteCallServer(context); PureCatClient.LogEvent("Do", nameof(Add), "0", $"{a} + {b} = {a + b}"); Task.Factory.StartNew(() => PureCatClient.DoTransaction("Do", nameof(Add2), () => PureCatClient.LogRemoteCallClient("callAdd2"))); }
static void Main(string[] args) { PureCatClient.Initialize(); while (true) { var a = DateTime.Now.Second; Console.WriteLine(DateTime.Now); var context = PureCatClient.DoTransaction("Do", nameof(DoTest), DoTest); var b = DateTime.Now.Second; PureCatClient.DoTransaction("Do", nameof(Add), () => Add(a, b, context)); Thread.Sleep(5000); } }