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(); } } }
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); }