Swift Academy · Oppitunti

Task ja Taskin peruutus

Rakenteisten Task-tehtävien luominen, peruutuksen tarkistaminen ja yhteistoiminnallinen peruutus.

Oppitunti 2/412 vaihetta

Task ja Taskin peruutus on ilmainen Swift Academy-oppitunti CoddyKitissä. Tämä on oppitunti 2/4. Voit lukea tästä oppimispolusta kokonaan mitkä tahansa 3 oppituntia ilmaiseksi — sen jälkeen CoddyKit PRO avaa kaikki oppitunnit sekä käytännön harjoittelun sisäänrakennetulla koodieditorilla ja ympäri vuorokauden toimivalla tekoälytuutorilla. Oppitunti kuuluu Swift Academy-oppimispolkuun, ja edistymisesi synkronoituu verkon ja CoddyKit-sovelluksen välillä. Swift Academy-kurssilla on yhteensä 4 oppituntia.

Tervetuloa

`Task` on Swiftin samanaikaisuuden perusyksikkö. Se suorittaa asynkronista työtä ja tukee rakenteista peruutusta resurssien hallinnan helpottamiseksi.

Taskin luominen

```swift Task { let user = try await fetchUser(id: 1) print(user.name) } ``` `Task` luo uuden samanaikaisen suoritusympäristön.

Taskin prioriteetti

```swift Task(priority: .userInitiated) { await loadContent() } Task(priority: .background) { await prefetch() } Task(priority: .utility) { await syncData() } ```

Task.cancel()-metodi

```swift var task: Task? func startLoading() { task = Task { await heavyWork() } } func stopLoading() { task?.cancel() } ```

Peruutuksen tarkistaminen

```swift func process() async throws { for item in items { try Task.checkCancellation() // throws if cancelled process(item) } } ```

Task.isCancelled

```swift func stream() async { while !Task.isCancelled { let data = await fetch() emit(data) } } ```

Irrotetut Task-tehtävät

```swift Task.detached(priority: .background) { // NOT inheriting actor context or priority of the caller await heavyBackgroundWork() } ```

withTaskCancellationHandler

```swift await withTaskCancellationHandler { await doWork() } onCancel: { cleanup() } ```

Taskin palauttamat arvot

```swift let task = Task { 6 * 7 } let result = await task.value // 42 ```

Viive

```swift try await Task.sleep(for: .seconds(2)) // Swift 5.7+ try await Task.sleep(nanoseconds: 1_000_000_000) // 1 second ```

Pikatarkistus

Mikä metodi heittää `CancellationError`-virheen, jos task on peruutettu?

Kertaus

Keskeiset asiat: • `Task { }` — luo asynkronisen työyksikön • `task.cancel()` + `Task.checkCancellation()` — yhteistoiminnallinen peruutus • `Task.isCancelled` — kyselytyylinen tarkistus • `Task.detached` — ei peri actoria tai prioriteettia • `Task.sleep(for:)` — estämätön viive Seuraavaksi: async let.
Aloita maksutta

Opi Swift tekoälytuutorin avulla — ilmaiseksi

Kirjoita ja suorita oikeaa koodia selaimessa, saa välitöntä apua tekoälytuutorilta ympäri vuorokauden ja jatka siitä, mihin jäit, verkossa tai sovelluksessa.

Kurssit
122
Oppitunnit
409

Usein kysytyt kysymykset

Onko oppitunti ”Task ja Taskin peruutus” ilmainen?

Kyllä — voit lukea täällä verkossa kokonaan ilmaiseksi mitkä tahansa Swift Academy-oppimispolun 3 oppituntia, myös oppitunnin “Task ja Taskin peruutus”. Sen jälkeen CoddyKit PRO avaa kaikki oppitunnit sekä interaktiiviset harjoitukset sisäänrakennetulla koodieditorilla ja ympäri vuorokauden toimivalla tekoälytuutorilla. Swift Academy-kurssilla on yhteensä 4 oppituntia.

Mitä opin oppitunnilla ”Task ja Taskin peruutus”?

Rakenteisten Task-tehtävien luominen, peruutuksen tarkistaminen ja yhteistoiminnallinen peruutus. Harjoittelet Swift Academy-aihetta koodilla, jonka suoritat suoraan selaimessa. Ympäri vuorokauden käytettävissä oleva tekoälytuutori vastaa kysymyksiisi oppitunnin aikana.

Tarvitsenko kokemusta aloittaakseni Swift Academy-opiskelun?

Aiempi kokemus ei ole tarpeen. CoddyKitin Swift Academy-oppimispolku sopii vasta-alkajista edistyneisiin, joten voit aloittaa tästä tai alusta ja edetä omaan tahtiisi. Tämä on oppitunti 2/4.

Kuinka kauan ”Task ja Taskin peruutus”-oppitunnin suorittaminen kestää?

Useimmat CoddyKitin oppitunnit kestävät noin 5–10 minuuttia. Jokainen oppitunti on lyhyt ja interaktiivinen, joten edistyt tasaisesti ja voit jatkaa siitä, mihin jäit – sekä verkossa että sovelluksessa.

Voinko kirjoittaa ja suorittaa koodia tällä Swift Academy-oppitunnilla?

Kyllä. Jokainen Swift Academy-oppitunti sisältää sisäänrakennetun koodieditorin, joten voit kirjoittaa ja suorittaa oikeaa koodia suoraan selaimessa ja saada välitöntä palautetta tekoälyltä – paikallista asennusta ei tarvita.

Kaikki tämän kurssin oppitunnit

  1. async/await-syntaksi ja async-funktioiden kutsuminen
  2. Task ja Taskin peruutus
  3. async let ja samanaikaiset alitehtävät
  4. Actor-tyypit ja jaetun muuttuvan tilan suojaaminen
← Takaisin: Swift Academy