import Ġkotlinx . coroutines .* Ċ import Ġkotlinx . coroutines . flow .* Ċ import Ġkotlin . system .* Ċ Ċ fun Ġfoo (): ĠFlow < Int > Ġ= Ġflow Ġ{ ĊĠĠĠ Ġfor Ġ( i Ġin Ġ 1 .. 3 ) Ġ{ ĊĊĠĠĠĠĠĠĠ Ġ// Ġ éĿŀ åĲĮ æľŁ ãģ§ 1 0 0 ãĥŁ ãĥª ç§Ĵ å¾ħ ãģ¤ ĊĠĠĠĠĠĠĠ Ġdelay ( 1 0 0 ) ĊĊĠĠĠĠĠĠĠ Ġ// Ġæ ¬ ¡ ãģ® åĢ¤ ãĤĴ è¿Ķ ãģĻ ĊĠĠĠĠĠĠĠ Ġemit ( i ) ĊĠĠĠ Ġ} Ċ } Ċ Ċ /* Ċ Ġ* ĠãĤ³ ãĥ« ãĥ¼ãĥ ģ ãĥ³ ï¼ļ éĿŀ åĲĮ æľŁ ãĥķ ãĥŃ ãĥ¼ ï¼ļ æľĢæĸ° ãģ® åıĸå¾Ĺ Ċ Ġ* ĠãĤ³ ãĥ¼ãĥ« ãĥī ãĤ¹ãĥĪ ãĥª ãĥ¼ãĥł ï¼ļ åıĹ ä¿¡ ãģĹãģªãģĦ ãģĭ ãģ İ ãĤĬ åĭķ ä½ľ ãģĹãģªãģĦ Ċ Ġ* Ġ å¿ħ ãģļ ãĤ³ ãĥ« ãĥ¼ãĥ ģ ãĥ³ãĤ¹ ãĤ³ ãĥ¼ãĥĹ ãģ« ãģªãĤĭ ãģŁãĤģ éĸ ī ãģĺ å¿ ĺ ãĤĮ ãģĮ ãģªãģĦ Ċ Ġ* Ċ Ġ* Ġconf late ãĤª ãĥļ ãĥ¬ ãĥ¼ãĤ¿ ãĥ¼ ãģ§ ãĤĤ åĩ¦çĲĨ ãģĮ éģ ħ ãģĦ åł´åĲĪãģ¯ collect Latest ãĤª ãĥļ ãĥ¬ ãĥ¼ãĤ¿ ãĤĴä½¿çĶ¨ ãģĻãĤĭ ãĢĤ Ċ Ġ* Ġ éģ ħ ãģĦ ãĤ³ ãĥ¬ ãĤ¯ ãĤ¿ ãĥ¼ãĤĴ ãĤŃ ãĥ£ ãĥ³ ãĤ» ãĥ« ãģĹ ãĢģ æĸ°ãģĹãģĦ åĢ¤ ãģĮ çĻº è¡Į ãģķãĤĮãĤĭ ãģŁ ãģ³ ãģ« ãĤ³ ãĥ¬ ãĤ¯ ãĤ¿ ãĥ¼ãĤĴ åĨį èµ· åĭķ ãģĻãĤĭ ãĢĤ Ċ Ġ* Ġ æĸ°ãģĹãģĦ åĢ¤ ãģ§ ãĥĸ ãĥŃ ãĥĥãĤ¯ åĨħ ãģ® ãĤ³ãĥ¼ãĥī ãĤĴ ãĤŃ ãĥ£ ãĥ³ ãĤ» ãĥ« ãģĻãĤĭ ãĢĤ Ċ Ġ*/ Ċ fun Ġmain () Ġ= Ġrun Blocking < Unit > Ġ{ ĊĊĠĠĠ Ġ// Ġ æľĢæĸ° ãģĮ åıĸå¾Ĺ ãģ§ãģį ãĤĮãģ° ãĤĪ ãģĦ ï¼ļ ãģķ ãĤī ãģ« éĩį ãģĦ åĩ¦çĲĨ çĶ¨ ĊĠĠĠ Ġprintln (" --- Processing Ġthe Ġlatest Ġvalue --- ") ĊĊĠĠĠ Ġval Ġtime Ġ= Ġmeasure Time Millis Ġ{ ĊĠĠĠĠĠĠĠ Ġfoo () ĊĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. collect Latest Ġ{ Ġvalue Ġ-> ĠĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ// Ġcollect Latest ãģ® æľ¬ ä½ĵ ãģ«ãģ¯ 3 0 0 ãĥŁ ãĥª ç§Ĵ ãģĭ ãģĭ ãĤĭ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ// Ġ æĸ°ãģĹãģĦ åĢ¤ ãģ¯ 1 0 0 ãĥŁ ãĥª ç§Ĵ ãģĶ ãģ¨ ãģ« çĻº è¡Į ãģķãĤĮãĤĭ ãģŁãĤģ ãĢģ ãĥĸ ãĥŃ ãĥĥãĤ¯ ãģ¯ ãģĻãģ¹ãģ¦ãģ® åĢ¤ ãģ§ å®Łè¡Į ãģķãĤĮãĤĭ ãģĮ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ// Ġ æľĢ å¾Į ãģ® åĢ¤ ãģ«å¯¾ ãģĹãģ¦ ãģ® ãģ¿ å®Į äºĨ ãģĻãĤĭ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġprintln (" Collect ing Ġ$ value ") Ġ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ// Ġ 3 0 0 ãĥŁ ãĥª ç§Ĵ å¾ħ ãģ£ãģ¦ åĢ¤ ãĤĴ è¡¨ç¤º ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġdelay ( 3 0 0 ) ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ// Ġ æľĢ çµĤ ãģ® åĢ¤ ãĤĴåıĸå¾Ĺ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġprintln (" Done Ġ$ value ") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĠĊĠĠĠ Ġ} ĠĠĠĊĠĠĠ Ġprintln (" Collected Ġin Ġ$ time Ġms ") Ċ Ċ } ĠĠĊ Ċ // Ġ åĩºåĬĽ ï¼ļ Ċ // Ġ--- Processing Ġthe Ġlatest Ġvalue --- Ċ // ĠCollect ing Ġ 1 Ċ // ĠCollect ing Ġ 2 Ċ // ĠCollect ing Ġ 3 Ċ // ĠDone Ġ 3 Ċ // ĠCollect ed Ġin Ġ 7 0 9 Ġms