Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Hello, Swift Concurrency world.の振り返り / Looking ...

Hello, Swift Concurrency world.の振り返り / Looking back on Hello, Swift Concurrency world.

This is the continuation of "Hello, SwiftConcurrency world." at iOSDC Japan 2021.

[email protected]

September 24, 2021
Tweet

Other Decks in Programming

Transcript

  1. ߏ଄Խϓϩάϥϛϯά IUUQTFXPSETKQXߏ଄ԽϓϩάϥϛϯάIUNM ίϯϐϡʔλϓϩάϥϜͷ։ൃ΍ཧղɺमਖ਼Λԁ׈ʹߦ͑Δ Α͏ɺϓϩάϥϜΛ੔ཧ͞Εͨߏ଄ͷ૊Έ߹ΘͤʹΑͬͯߏ ੒͢Δ͜ͱɻҰൠతʹ͸ w ॱ઀ هड़ͨ͠ॱ൪ʹ࣮ߦ͢Δ  w

    ෼ذ ࢦఆ͞Εͨ৚݅Λຬ͔ͨ͢൱͔Ͱࢬ෼͔Ε͢Δ  w ൓෮ ࢦఆ͞Εͨ৚͕݅੒Γཱͭؒ܁Γฦ͢  ͷࡾͭͷ੍ޚߏ଄ʹΑͬͯॲཧͷྲྀΕΛهड़͢Δ͜ͱͰ͋Δ ͱཧղ͞Ε͍ͯΔɻ
  2. NFUBEBUB 5BTLUSFF GFUDI0OF5IVNCOBJM EBUB NFUBEBUB 5BTLUSFF GFUDI0OF5IVNCOBJM EBUB NFUBEBUB 5BTLUSFF

    GFUDI0OF5IVNCOBJM EBUB NFUBEBUB 5BTLUSFF GFUDI0OF5IVNCOBJM EBUB 4USVDUVSFE$PODVSSFODZ ໭Γ஋͸<6**NBHF>
  3. ߏ଄Խϓϩάϥϛϯά IUUQTFXPSETKQXߏ଄ԽϓϩάϥϛϯάIUNM ίϯϐϡʔλϓϩάϥϜͷ։ൃ΍ཧղɺमਖ਼Λԁ׈ʹߦ͑Δ Α͏ɺϓϩάϥϜΛ੔ཧ͞Εͨߏ଄ͷ૊Έ߹ΘͤʹΑͬͯߏ ੒͢Δ͜ͱɻҰൠతʹ͸ w ॱ઀ هड़ͨ͠ॱ൪ʹ࣮ߦ͢Δ  w

    ෼ذ ࢦఆ͞Εͨ৚݅Λຬ͔ͨ͢൱͔Ͱࢬ෼͔Ε͢Δ  w ൓෮ ࢦఆ͞Εͨ৚͕݅੒Γཱͭؒ܁Γฦ͢  ͷࡾͭͷ੍ޚߏ଄ʹΑͬͯॲཧͷྲྀΕΛهड़͢Δ͜ͱͰ͋Δ ͱཧղ͞Ε͍ͯΔɻ
  4. ஈ֊ͷ"DUPSʹΑΔσʔλڝ߹๷ࢭ wୈஈ֊ 
 "DUPSΛར༻͍ͯ͠Δ෦෼Ͱσʔλڝ߹Λ๷͙ 
 ྫάϩʔόϧม਺ΛHMPCBMBDUPSʹ͢ΔɻDMBTTΛBDUPSʹม׵͢Δ wୈஈ֊ 
 άϩʔόϧม਺͸HMPCBMBDUPSͰकΒͳ͚Ε͹ͳΒͳ͍ ΋͘͠͸໌

    ࣔతʹνΣοΫର৅֎ʹ͠ͳ͚Ε͹ͳΒͳ͍ 
 DMBTT΍DMBTTΛ಺෦ʹؚΜͩܕ͸σϑΥϧτͰಉ࣌ฒߦॲཧؒͰ࢖ ༻Ͱ͖ͳ͘ͳΔ 4XJGU$PODVSSFODZ3PBENBQ ୈஈ֊ͰTPVSDFCSFBLJOHΛى͜͢Մೳੑ
  5. ͋ΔϞδϡʔϧͷ4FOEBCMFνΣοΫஈ֊ w 4XJGU9 
 $PODVSSFODZ࢖༻෦෼ͷΈ4FOEBCMFνΣοΫΛͯ͠ϫʔχϯά͕ൃੜ͢Δ 
 !VOTBGF4FOEBCMF͸$PODVSSFODZΛ࢖༻͍ͯ͠Δ෦෼Ͱ͸!4FOEBCMFɺͦ ΕҎ֎͸OPO!4FOEBCMFͱͯ͠ѻΘΕΔ w 4XJGU9

    ίϯύΠϥϑϥά 
 ϞδϡʔϧશମͰ4FOEBCMFνΣοΫΛͯ͠ϫʔχϯά͕ൃੜ͢Δ 
 !VOTBGF4FOEBCMF͸ৗʹ!4FOEBCMFͱͯ͠ѻΘΕΔ w 4XJGU 
 ϞδϡʔϧશମͰ4FOEBCMFνΣοΫΛͯ͠Τϥʔ͕ൃੜ͢Δ 
 ͨͩ͠ɺ$PODVSSFODZະରԠͷϞδϡʔϧͷܕ͸ϫʔχϯά͕ൃੜ͢Δ
  6. 0CKFDUJWF$એݴͷ4FOEBCMF w 0CKFDUJWF$͔ΒJNQPSUͨ͠ܕ͕4FOEBCMF͔OPO4FOEBCMF Ͱ͸ͳ͍͔ΛϔομϑΝΠϧͰ໌ࣔతʹࢦఆ͢Δ w TXJGU@BUUS l!4FOEBCMF 
 4XJGU͸ແ৚݅ʹ׬શͳ4FOEBCMF΁ͷ४ڌΛ߹੒͢Δ w

    ҉໧తʹTXJGU@BUUS l!4FOEBCMFz ͕෇༩͞ΕΔ 
 BTZODʹม׵͞ΕΔϝιουͷҾ਺ͷDPNQMFUJPO)BOEMFSͷϒϩοΫ 
 FOVN@FYUFOTJCJMJUZ /4@&/6. OT@FSSPS@EPNBJO /4@&3303  fl BH@FOVN /4@015*0/4 TXJGU@XSBQQFS /4@5:1&%@&/6.
  7. w TXJGU@BUUS l!@OPO4FOEBCMF 
 TXJGU@BUUS l!4FOEBCMF ͕࢖͑ΔॴͰ࢖͑Δ 
 ಉ͡એݴ΍ܕʹ෇͍ͨTXJGU@BUUS l!4FOEBCMF

    ͸ແࢹ͞Εͨ w TXJGU@BUUS !@OPO4FOEBCMF @BTTVNFE  
 ಉ͡એݴ΍ܕʹ෇͍ͨTXJGU@BUUS l!4FOEBCMFz ͸ແࢹ͞Εͳ͍ 0CKFDUJWF$એݴͷ4FOEBCMF
  8. 0CKFDUJWF$ϧʔϧ·ͱΊ w TXJGU@BUUS l!@OPO4FOEBCMFz ͳΒ͹໌ࣔతʹOPO4FOEBCMF w TXJGU@BUUS l!4FOEBCMFz ·ͨ͸҉໧తʹ෇༩͞ΕΔ΋ͷ͸໌ ࣔతʹ4FOEBCMF

    w TXJGU@BUUS l!@OPO4FOEBCMF @BVEJUFE z ͳΒ͹໌ࣔతʹ OPO4FOEBCMF w ͪ͜Βʹ߹கͨ͠΋ͷ͸໌ࣔతʹ4FOEBCMF w ͦͷଞ͸OPO4FOEBCMF
  9. SFRVJSFFYQMJDJUTFOEBCMF w ίϯύΠϥϑϥά w ϓϩτίϧҎ֎ͷQVCMJD ·ͨ͸PQFO ͳܕ͸໌ࣔతʹ 4FOEBCMFɺ·ͨ͸OPO4FOEBCMF ˞ Λࢦఆ͠ͳ͚Ε͹ͳΒ

    ͳ͍ɻ 
 ˞OPO4FOEBCMFͷࢦఆํ๏͸ݕ౼த !VOBWBJMBCMF4FOEBCMFͳͲ  wࢦఆ͞Ε͍ͯͳ͍৔߹͸ fi YJU෇͖ͷXBSOJOH͕ग़ྗ͞ΕΔɻج ຊతʹ͸ͦΕʹैͬͯίʔυͷม׵Λߦ͑͹ྑ͍ͷͰɺܕΛ୳ ͯ͠ม׵͢Δͱ͍͏ෛ୲͕ݮΔ