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

Swift Concurrency Next Step

Sponsored · Ship Features Fearlessly Turn features on and off without deploys. Used by thousands of Ruby developers.

Swift Concurrency Next Step

Talk about Swift Concurrency in iOSDC Japan 2022

Avatar for sztk1209@gmail.com

[email protected]

September 11, 2022
Tweet

Other Decks in Programming

Transcript

  1. "TZODBXBJUͱ͸ʁ w ಉ࣌ฒߦॲཧͷجຊϒϩοΫΛߏங͢Δ w ಺෦ͰBTZODίʔυΛݺͼग़ͯ͠ɺ݁ՌΛऔಘޙʹଓ͖ͷॲཧ Λ࣮ߦͰ͖Δ ଞͷ5BTLΛ࣮ߦͰ͖Δ BTZOD BTZOD BXBJU

    BTZOD தஅ ݁ՌΛ଴ػऔಘ ࠶։ ݺͼग़͠ ࠶։લͱಉ͡εϨουͱ͸ݶΒͳ͍ 㱠 4XJGU$PODVSSFODZͷ͓͞Β͍"TZODBXBJU"TZODBXBJUͱ͸ʁ
  2. "DUPSͱ͸ʁ w ಉ࣌ฒߦॲཧ࣌ͷσʔλڝ߹ ˞ Λ๷͙ BTZOD 5BTL "DUPS 5BTL 5BTL

    BTZOD BTZOD ˞ ෳ਺ͷεϨου͔Βಉ͡σʔλ΁ಡΈॻ͖Λಉ࣌ʹߦͬͨ݁Ռɺ ෆ੔߹ͳ஋Λऔಘͨ͠Γɺ࠷ѱΫϥογϡ͢ΔՄೳੑͷ͋Δঢ়ଶ 4XJGUͷσʔλڝ߹࣌ͷڍಈ͸ෆఆ IUUQTGPSVNTTXJGUPSHUSBDFDPOEJUJPOCFIBWJPST 4XJGU$PODVSSFODZͷ͓͞Β͍"DUPSͱ͸ʁ
  3. "DUPSͷಛ௃ ಺෦ঢ়ଶ͸"DUPSͰकΒΕ͍ͯΔ 📬 🤏 ✉ ✉ ✉ w Ұ౓ʹҰͭͷλεΫͷΈ࣮ߦ͢Δ w

    "DUPS͸ͦΕͧΕ֎ͷੈք͔Βִ཭͞Ε͍ͯΔ "DUPS֎ "DUPS಺ 4XJGU$PODVSSFODZͷ͓͞Β͍"DUPSͷಛ௃
  4. $MPDL *OTUBOU1SPUPDPM %VSBUJPO1SPUPDPM w ࣌ؒ΍࣌ܭͷ֓೦Λද͢৽͍͠1SPUPDPM܈ w 5BTLTMFFQͷ"1*͕มߋ TMFFQ OBOPTFDPOET ͸EFQSFDBUFE

     w 1SPUPDPMʹ४ڌͯ͠ಠࣗͷܕΛ࡞੒Ͱ͖Δ ࢀߟྫ  w Α͘࢖ΘΕΔ΋ͷ͸༻ҙࡁ $POUJOVPVT$MPDL 4VTQFOEJOH$MPDL  w 04όʔδϣϯґଘ NBD04 J04 XBUDI04 UW04  IUUQTHJUIVCDPNBQQMFTXJGUFWPMVUJPOCMPCNBJOQSPQPTBMTDMPDLJOTUBOUEVSBUJPONE ࠷ۙͷΞοϓσʔτ$MPDL *OTUBOU BOE%VSBUJPO
  5. 4USJDU$PODVSSFODZ$IFDLJOHͱ͸ʁ w 4FOEBCMFνΣοΫΛஈ֊తʹಋೖ͢ΔͨΊͷπʔϧ Ҏલ͸ XBSODPODVSSFODZͱ͍͏ϑϥάΛ࢖͍ͬͯͨ  w কདྷΤϥʔʹͳΔίʔυΛϫʔχϯάͱͯ͠ݕ஌ w .JOJNBM

    5BSHFUFE $PNQMFUFͷஈ֊ d9DPEF9 9DPEFd ࠷ۙͷΞοϓσʔτ4USJDU$PODVSSFODZ$IFDLJOH4USJDU$PODVSSFODZ$IFDLJOHͱ͸
  6. ͭͷϞʔυ w .JOJNBMϞʔυ 
 4FOEBCMFʹ໌ࣔతʹ४ڌ͞Ε͍ͯΔՕॴ΁4FOEBCMF੍໿Λద༻͠ɺ $PODVSSFODZ࢖༻ՕॴͰ"DUPSJTPMBUJPOνΣοΫ ˞ Λߦ͏ w 5BSHFUFEϞʔυ

    
 4FOEBCMF੍໿Λద༻͠ɺ4FOEBCMFʹ໌ࣔతʹ४ڌͨ͠ܕΛؚΊ$PODVSSFODZ࢖ ༻ՕॴͰ"DUPSJTPMBUJPOνΣοΫΛߦ͏ w $PNQMFUFϞʔυ 
 ϞδϡʔϧશମͰ4FOEBCMF੍໿ͱ"DUPSJTPMBUJPOνΣοΫΛߦ͏ ˞"DUPSͷ಺෦ঢ়ଶʹσʔλڝ߹͕ى͖Δ͜ͱΛ๷͙ͨΊͷνΣοΫ ࠷ۙͷΞοϓσʔτ4USJDU$PODVSSFODZ$IFDLJOHͭͷϞʔυ
  7. औΓ্͛Δ಺༰ w Α͘ى͜Δͭͷ໰୊ .BJO"DUPSϒϩοΩϯάɺ"DUPSڝ߹ɺڠௐε Ϩουϓʔϧͷރׇɺ$POUJOVBUJPOͷޡ༻  w "DUPSͱϦΤϯτϥϯτ w "DUPSͷॲཧͷ࣮ߦॱং

    w ڠௐΩϟϯηϧ w 5BTLߏ଄ମͱϝϞϦ؅ཧ w .BJO"DUPSSVOͱ5BTL\!.BJO"DUPS^ͷҧ͍ w ˏ4FOEBCMFΫϩʔδϟͷޡղ ࣮૷্ͷ஫ҙ఺
  8. ղܾࡦ w "DUPS্Ͱຊ౰ʹඞཁͳॲཧ͸Կ͔Λ࠶ݕ౼͠ɺ"DUPS্Ͱͷ ॲཧΛݮΒ͢ " " " # # #

    $ $ $ " # $ "DUPS ࣮૷্ͷ஫ҙ఺Α͘ى͜Δͭͷ໰୊"DUPSڝ߹ղܾࡦ
  9. ҆શͳ΋ͷةݥͳ΋ͷ IUUQTEFWFMPQFSBQQMFDPNWJEFPTQMBZXXED BXBJU "DUPST 5BTLHSPVQT PT@VOGBJS@MPDL /4-PDL JOಉظίʔυ %JTQBUDI4FNBQIPSF QUISFBE@DPOE@/4$POEJUJPO

    QUISFBE@SX@MPDL ଞ ίϯύΠϥνΣοΫ⭕ ίϯύΠϥνΣοΫ❌ ίϯύΠϥνΣοΫ❌ 􀁢 ҆શ 􀁞 ஫ҙ 􀁠 ةݥ ࣮૷্ͷ஫ҙ఺Α͘ى͜Δͭͷ໰୊ڠௐεϨουϓʔϧͷރׇલఏ஌ࣝ
  10. BXBJU "DUPST 5BTLHSPVQT PT@VOGBJS@MPDL /4-PDL JOಉظίʔυ %JTQBUDI4FNBQIPSF QUISFBE@DPOE@/4$POEJUJPO QUISFBE@SX@MPDL ଞ

    ίϯύΠϥνΣοΫ⭕ ίϯύΠϥνΣοΫ❌ ίϯύΠϥνΣοΫ❌ 􀁢 ҆શ 􀁞 ஫ҙ 􀁠 ةݥ ҆શͳ΋ͷةݥͳ΋ͷ IUUQTEFWFMPQFSBQQMFDPNWJEFPTQMBZXXED ίϯύΠϥʹΑΔอূ ࣮૷্ͷ஫ҙ఺Α͘ى͜Δͭͷ໰୊ڠௐεϨουϓʔϧͷރׇલఏ஌ࣝ
  11. BXBJU "DUPST 5BTLHSPVQT PT@VOGBJS@MPDL /4-PDL JOಉظίʔυ %JTQBUDI4FNBQIPSF QUISFBE@DPOE@/4$POEJUJPO QUISFBE@SX@MPDL ଞ

    ίϯύΠϥνΣοΫ⭕ ίϯύΠϥνΣοΫ❌ ίϯύΠϥνΣοΫ❌ 􀁢 ҆શ 􀁞 ஫ҙ 􀁠 ةݥ ҆શͳ΋ͷةݥͳ΋ͷ IUUQTEFWFMPQFSBQQMFDPNWJEFPTQMBZXXED ਖ਼͘͠࢖͑͹҆શ ίϯύΠϥͷอূͳ͠ ࣮૷্ͷ஫ҙ఺Α͘ى͜Δͭͷ໰୊ڠௐεϨουϓʔϧͷރׇલఏ஌ࣝ
  12. BXBJU "DUPST 5BTLHSPVQT PT@VOGBJS@MPDL /4-PDL JOಉظίʔυ %JTQBUDI4FNBQIPSF QUISFBE@DPOE@/4$POEJUJPO QUISFBE@SX@MPDL ଞ

    ίϯύΠϥνΣοΫ⭕ ίϯύΠϥνΣοΫ❌ ίϯύΠϥνΣοΫ❌ 􀁢 ҆શ 􀁞 ஫ҙ 􀁠 ةݥ ҆શͳ΋ͷةݥͳ΋ͷ IUUQTEFWFMPQFSBQQMFDPNWJEFPTQMBZXXED εϨουؒͷґଘؔ܎͕ݟ͑ͳ͍ ίϯύΠϥͷอূͳ͠ ࣮૷্ͷ஫ҙ఺Α͘ى͜Δͭͷ໰୊ڠௐεϨουϓʔϧͷރׇલఏ஌ࣝ
  13. ࣮૷্ͷ஫ҙ఺ w Α͘ى͜Δͭͷ໰୊ .BJO"DUPSϒϩοΩϯάɺ"DUPSڝ߹ɺڠௐε Ϩουϓʔϧͷރׇɺ$POUJOVBUJPOͷޡ༻  w "DUPSͱϦΤϯτϥϯτ w "DUPSͷॲཧͷ࣮ߦॱং

    w ڠௐΩϟϯηϧ w 5BTLߏ଄ମͱϝϞϦ؅ཧ w .BJO"DUPSSVOͱ5BTL\!.BJO"DUPS^ͷҧ͍ w ˏ4FOEBCMFΫϩʔδϟͷޡղ ࣮૷্ͷ஫ҙ఺