() -> Unit = {} w ؔͰଞͷTVTQFOEؔΛݺͼग़͢͜ͱͰ ࣮ߦεϨουΛϒϩοΫͤͣʹ ίʔυ࣮ߦΛதஅ͢ΔՄೳੑͷ͋Δؔ w TVTQFOEؔଞͷTVTQFOE͔ؔΒͷΈݺͼग़͢͜ͱ͕Մೳ TVTQFOEؔϥϜμ fun normalFunc() { susFuncA(1000L) } ௨ৗͷ͔ؔΒͷݺͼग़͠
() -> Unit = {} w ؔͰଞͷTVTQFOEؔΛݺͼग़͢͜ͱͰ ࣮ߦεϨουΛϒϩοΫͤͣʹ ίʔυ࣮ߦΛதஅ͢ΔՄೳੑͷ͋Δؔ w TVTQFOEؔଞͷTVTQFOE͔ؔΒͷΈݺͼग़͢͜ͱ͕Մೳ TVTQFOEؔϥϜμ fun normalFunc() { susFuncA(1000L) } ௨ৗͷ͔ؔΒͷݺͼग़͠ ͳͥTVTQFOEؔ ௨ৗͷ͔ؔΒݺͼग़͢͜ͱ͕ग़དྷͳ͍ͷ͔ʁ
receiver: R, arg: A, continuation: Continuation<Unit> ): Any? { val function = (this as Function3<R, A, Continuation<Unit>, Any?>) return function.invoke(receiver, arg, continuation) } w ,UPSͰ$POUJOVBUJPOʹՃ͑ͯҙͷܕͷΦϒδΣΫτΛ Ҿ͖ͯ͠৽ͨʹίϧʔνϯΛ։࢝͢ΔؔΛಠ࣮͍ࣗͯ͠Δ w ΈࠐΈؔͱ͍ۙॲཧΛҎԼͷؔͰ࣮ݱ͍ͯ͠Δ
receiver: R, arg: A, continuation: Continuation<Unit> ): Any? { val function = (this as Function3<R, A, Continuation<Unit>, Any?>) return function.invoke(receiver, arg, continuation) } w ҾΛ"ܕ͔͠ड͚औΒͳ͍ͣͷϥϜμࣜ UIJT ͕Կނ͔ Ҿͱͯ͠"ܕɾ$POUJOVBUJPOͷ̎ͭΛड͚औΔ'VODUJPOܕʹ Ωϟετ͞Ε͔ͯΒ࣮ߦ͞Ε͍ͯΔ
Unit). startCoroutineUninterceptedOrReturn3( receiver: R, arg: A, continuation: Continuation<Unit> ): Any? { val function = (this as Function3<R, A, Continuation<Unit>, Any?>) return function.invoke(receiver, arg, continuation) } w ࣮ϥϜμࣜ UIJT TVTQFOEϥϜμͳͷͰίϯύΠϧ࣌ʹ Ҿͱͯ͠$POUJOVBUJPOड͚औΔϥϜμࣜʹม͞ΕΔʂ w ͕࣮ͨͬͯ͠ߦ࣌ͷΩϟετޭ͢Δ ੜ͞ΕΔίʔυ ٙࣅίʔυ