Example #1
0
 internal void UnRegister(LCIMClient client)
 {
     idToClients.Remove(client.Id);
     if (idToClients.Count == 0)
     {
         Disconnect();
         LCRealtime.RemoveConnection(this);
     }
 }
Example #2
0
        static void Main(string[] args)
        {
            WriteLine("Hello World!");

            SingleThreadSynchronizationContext.Run(async() => {
                LCLogger.LogDelegate += Print;
                LCApplication.Initialize("ikGGdRE2YcVOemAaRbgp1xGJ-gzGzoHsz", "NUKmuRbdAhg1vrb2wexYo1jo", "https://ikggdre2.lc-cn-n1-shared.com");

                LCIMClient client = new LCIMClient("lean")
                {
                    OnPaused = () => {
                        WriteLine("~~~~~~~~~~~~~~~ disconnected");
                    },
                    OnResume = () => {
                        WriteLine("~~~~~~~~~~~~~~~ reconnected");
                    }
                };

                await client.Open();

                int count = 0;
                while (count < 2)
                {
                    WriteLine($"pause : {count}");

                    await Task.Delay(5 * 1000);
                    LCRealtime.Pause();

                    await Task.Delay(5 * 1000);
                    LCRealtime.Resume();

                    await Task.Delay(5 * 1000);
                    count++;
                }

                try {
                    await client.Close();
                    // Done
                } catch (Exception e) {
                    WriteLine($"xxxxxxxxxxxx {e.Message}");
                }
            });
        }