Slide 1

Slide 1 text

4USJDU$PODVSSFODZʹͨ͠Β EFJOJU で Ϋϥογϡ͢Δ࿩ 💥

Slide 2

Slide 2 text

࣯ ͠ͱΈ w ݱࡏࣾͰۈ຿ w ࠷͍ۙ͢͝ͱࢥͬͨΞϓϦ͸:"."1 IUUQTXXXTIFUPNNZDPN 2

Slide 3

Slide 3 text

3 5-%3

Slide 4

Slide 4 text

4 4XJGUY4USJDU$PODVSSFODZͰ EFJOJUʹTFMGͷΩϟϓνϟ͕ ೖͬͯΔͱ💥Ϋϥογϡ͠·͢

Slide 5

Slide 5 text

5 ؾΛ͚ͭ·͠ΐ͏

Slide 6

Slide 6 text

6 ͋Γ͕ͱ͏͍͟͝·ͨ͠

Slide 7

Slide 7 text

7 ࣌ؒ༨ͬͨͷͰ΋͏গ͠࿩͠·͢

Slide 8

Slide 8 text

8 4USJDU$PODVSSFODZ

Slide 9

Slide 9 text

9

Slide 10

Slide 10 text

10

Slide 11

Slide 11 text

11 .BJO"DUPS͡Όͳ͍ͱ ౖΒΕͯΔ͔Β .BJO"DUPSʹ͠Α͏

Slide 12

Slide 12 text

12 ˞9DPEFͷલ͸ϫʔχϯάग़ͳ͔ͬͨʁ

Slide 13

Slide 13 text

13 ࣮ߦ

Slide 14

Slide 14 text

14 💥

Slide 15

Slide 15 text

15 ղઆʂ

Slide 16

Slide 16 text

16 .BJO"DUPS

Slide 17

Slide 17 text

17 .BJO"DUPS /POJTPMBUFE

Slide 18

Slide 18 text

18 1. Non-isolated 2. Isolated to an actor value 3. Isolated to a global actor https://www.swift.org/migration/documentation/swift-6-concurrency-migration-guide/dataracesafety#Isolation-Domains

Slide 19

Slide 19 text

19 1. ΞΫλʔִ཭ͳ͠ 2. ΧελϜΞΫλʔ 3. άϩʔόϧΞΫλʔ https://www.swift.org/migration/documentation/swift-6-concurrency-migration-guide/dataracesafety#Isolation-Domains

Slide 20

Slide 20 text

20

Slide 21

Slide 21 text

21

Slide 22

Slide 22 text

22 ͳͷͰ🆖

Slide 23

Slide 23 text

23 ͜Ε͸ʁ

Slide 24

Slide 24 text

24 TFMGͷԆ໋͸࣮ߦ࣌Ϋϥογϡ https://www.swift.org/migration/documentation/swift-6-concurrency-migration-guide/commonproblems#Non-Isolated-Deinitialization

Slide 25

Slide 25 text

25 ɾݩʑEFJOJU͸TFMGͷࢀরϦεΫ͕͋ͬͨ ɾTFMGͷࢀরΧ΢ϯτ͕ʹͳͬͨͱ͖ ݺ͹ΕΔͷ͕EFJOJU ɾEFJOJUͷதͰߋʹTFMGΛࢀরͯ͠ɺ ࢀরΧ΢ϯτͱͳΔ ɾͳͷʹίϯύΠϥͷܯࠂ͕ͳ͔ͬͨ

Slide 26

Slide 26 text

26 ରࡦ

Slide 27

Slide 27 text

27 https://www.swift.org/migration/documentation/swift-6-concurrency-migration-guide/commonproblems#Non-Isolated-Deinitialization

Slide 28

Slide 28 text

28 ɾEFJOJUͷॲཧ͸ಉظతʹߦΘͳͯ͘ྑ͍έʔε͕΄ͱΜͲ ɾඇߏ଄ԽλεΫΛ࢖ִͬͯ཭͞ΕͨσʔλΛѻ͏ ɾؒҧͬͯ΋TFMG͸Ωϟϓνϟ͠ͳ͍ʂ

Slide 29

Slide 29 text

29 EFJOJUͰߦ͍ͬͯͨॲཧ 7JFX$POUSPMMFSͷ਌ࢠؔ܎ղআ /PUJ fi DBUJPO$FOUFSͷSFNPWF0CTFSWFS

Slide 30

Slide 30 text

30 TFMG৮Βͳ͍ͱॲཧͰ͖ͳ͍

Slide 31

Slide 31 text

31 😇

Slide 32

Slide 32 text

32 ˞࣮͸/PUJ fi DBUJPO$FOUFSʹ͸ରॲͰ͖ͯ·͕͢ɺ ࢠ7JFX$POUSPMMFSͷѻ͍Ͱຊ౰ʹࠔͬͯ·͢ ͍͍ํ๏஌ͬͯΔํ͍ͨΒڭ͍͑ͯͩ͘͞ 5BTLͰอ࣋ͯ͠ɺEFJOJUதͰDBODFM

Slide 33

Slide 33 text

33 ͋Γ͕ͱ͏͍͟͝·ͨ͠