package Ġexploration . as ynchronous And Concurrent . coroutine In Kotlin Ċ Ċ import Ġkotlinx . coroutines . async Ċ import Ġkotlinx . coroutines . delay Ċ import Ġkotlinx . coroutines . run Blocking Ċ import Ġkotlin . system . measure Time Millis Ċ Ċ /** Ċ Ġ* ĠCreated Ġby ĠChen J in X in Ġon Ġ 2 0 2 1 / 7 / 2 1 Ġä¸ĭåįĪ 4 : 2 9 Ċ Ġ*/ Ċ suspend Ġfun Ġsearch Item l One (): ĠString Ġ{ ĊĠĠĠ Ġdelay ( 1 0 0 0 L ) ĊĠĠĠ Ġreturn Ġ" item - one " Ċ } Ċ Ċ suspend Ġfun Ġsearch Item Two (): ĠString Ġ{ ĊĠĠĠ Ġdelay ( 1 0 0 0 L ) ĊĠĠĠ Ġreturn Ġ" item - two " Ċ } Ċ Ċ fun Ġasync Test () Ġ= Ġrun Blocking < Unit > Ġ{ ĊĠĠĠ Ġval Ġtime Ġ= Ġmeasure Time Millis Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġone Ġ= Ġsearch Item l One () ĊĠĠĠĠĠĠĠ Ġval Ġtwo Ġ= Ġsearch Item Two () ĊĠĠĠĠĠĠĠ Ġprintln (" async Test : ĠThe Ġitems Ġis Ġ$ one Ġand Ġ$ two ") ĊĠĠĠ Ġ} ĊĠĠĠ Ġprintln (" Cost Ġtime Ġis Ġ$ time Ġms ") Ċ } Ċ Ċ fun Ġasync Test 2 () Ġ= Ġrun Blocking < Unit > Ġ{ ĊĠĠĠ Ġval Ġtime Ġ= Ġmeasure Time Millis Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġone Ġ= Ġasync Ġ{ Ġsearch Item l One () Ġ} ĊĠĠĠĠĠĠĠ Ġval Ġtwo Ġ= Ġasync Ġ{ Ġsearch Item Two () Ġ} ĊĠĠĠĠĠĠĠ Ġprintln (" async Test 2 : ĠThe Ġitems Ġis Ġ${ one . await ()} Ġand Ġ${ two . await () }") ĊĠĠĠ Ġ} ĊĠĠĠ Ġprintln (" Cost Ġtime Ġis Ġ$ time Ġms ") Ċ } Ċ Ċ fun Ġmain ( args : ĠArray < String >) Ġ= Ġrun Blocking < Unit > Ġ{ ĊĠĠĠ Ġasync Test () ĊĠĠĠ Ġasync Test 2 () Ċ }