package Ġchapter 4 . context . switch Ċ Ċ import Ġkotlinx . coroutines . experimental .* Ċ Ċ /** Ċ Ġ* ĠSwitch Ġcontext Ġusing Ġ` with Context ` Ġinstead Ġof Ġthe Ġcomplete Ċ Ġ* Ġcoroutine Ġbuilder Ċ Ġ*/ Ċ fun Ġmain ( args : ĠArray < String >) Ġ= Ġrun Blocking Ġ{ ĊĠĠĠ Ġbefore () ĊĠĠĠ Ġafter () Ċ } Ċ Ċ suspend Ġfun Ġbefore () Ġ{ ĊĠĠĠ Ġval Ġdispatcher Ġ= Ġnew Single Thread Context (" my Thread ") ĊĠĠĠ Ġval Ġname Ġ= Ġasync ( dispatcher ) Ġ{ ĊĠĠĠĠĠĠĠ Ġ// ĠDo Ġimportant Ġoperation Ġhere ĊĠĠĠĠĠĠĠ Ġ" Sus an ĠCal vin " ĊĠĠĠ Ġ}. await () ĊĊĠĠĠ Ġprintln (" User : Ġ$ name ") Ċ } Ċ Ċ suspend Ġfun Ġafter () Ġ{ ĊĠĠĠ Ġval Ġdispatcher Ġ= Ġnew Single Thread Context (" my Thread ") ĊĠĠĠ Ġval Ġname Ġ= Ġwith Context ( dispatcher ) Ġ{ ĊĠĠĠĠĠĠĠ Ġ// ĠDo Ġimportant Ġoperation Ġhere ĊĠĠĠĠĠĠĠ Ġ" Sus an ĠCal vin " ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprintln (" User : Ġ$ name ") Ċ }