Exemple #1
0
        public async static Task CheckBalance()
        {
            var client        = new httpClientSerive();
            var accountNumber = 0;

            Console.WriteLine("Please input account number: ");
            var input = Console.ReadLine();

            while (true)
            {
                if (int.TryParse(input, out accountNumber))
                {
                    var result = await client.GetBalance(accountNumber);

                    Console.WriteLine("Resutl:");
                    Console.WriteLine(result);
                    break;
                }
                else
                {
                    Console.WriteLine("Account number is an interger. Please input account number again.");
                    input = Console.ReadLine();
                }
            }
        }
Exemple #2
0
        public async static Task TestConcurrency()
        {
            var client = new httpClientSerive();
            var tasks  = new List <Task <TransactionBaseResponse> >();

            var beforeBalance = await client.GetBalance(1);

            Console.WriteLine("balance before run:" + beforeBalance);

            for (int i = 1; i < 5; i++)
            {
                tasks.Add(TestDeposit(new TransactionBaseRequest(1, i * 100, "USD")));
                tasks.Add(TestWithdraw(new TransactionBaseRequest(1, i * 50, "USD")));

                tasks.Add(TestDeposit(new TransactionBaseRequest(1, i * 100, "MYR")));
                tasks.Add(TestWithdraw(new TransactionBaseRequest(1, i * 50, "MYR")));
            }

            await Task.WhenAll(tasks);

            var afterBalance = await client.GetBalance(1);

            Console.WriteLine("balance after run:" + afterBalance);
        }