0Pricing
Dart Academy · Pelajaran

Isolate.run untuk Pemindahan Pekerjaan Cepat

Menjalankan fungsi di luar isolate utama

Isolate.run untuk Pemindahan Pekerjaan Cepat adalah pelajaran Dart Academy gratis di CoddyKit. Ini adalah pelajaran 2 dari 4. Kamu bisa membaca pelajaran lengkapnya di bawah secara gratis — lalu praktikkan langsung di browser dengan editor kode bawaan dan tutor AI 24/7. Ini adalah bagian dari jalur belajar Dart Academy, dan progresmu tersinkronisasi di web dan aplikasi CoddyKit. Kursus Dart Academy mencakup 4 pelajaran total.

Cara Masuk yang Mudah

Membuat isolat secara manual cukup rumit. Isolate.run adalah cara paling sederhana untuk memindahkan satu pekerjaan berat dari isolat utama. 🚀

Cara Kerjanya

Isolate.run membuat isolat baru, menjalankan fungsi Anda di sana, mengembalikan hasilnya, lalu mematikan isolat tersebut untuk Anda.

Mengembalikan Future

Karena pekerjaan berlangsung di tempat lain, Isolate.run memberikan Anda sebuah Future. Anda menggunakan await pada Future tersebut seperti pada pemanggilan async lainnya.

Future<int> sumIt() => Isolate.run(() {
  var total = 0;
  for (var i = 0; i < 1000000; i++) total += i;
  return total;
});

Menunggu Hasil

Panggil fungsi tersebut dan gunakan await pada jawabannya. Isolat utama tetap bebas menjaga UI Anda tetap lancar saat perhitungan berlangsung.

final result = await Isolate.run(heavyTask);
print(result);

Meneruskan Fungsi Tingkat Atas

Pekerjaan yang Anda jalankan sebaiknya berupa fungsi tingkat atas atau statis, atau closure sederhana. Dengan begitu, fungsi tersebut aman dikirim ke isolat baru.

Lakukan Capture dengan Hati-Hati

Nilai apa pun yang di-capture oleh closure akan disalin ke isolat baru. Jagalah agar data yang di-capture berukuran kecil dan bebas dari hal-hal yang tidak dapat dikirim, seperti soket.

Mengirimkan Input

Memerlukan input? Capture input tersebut di dalam closure atau teruskan sebagai parameter. Dart menyalin input tersebut, sehingga isolat bekerja pada versinya sendiri.

final big = await Isolate.run(() => parseJson(rawText));

Mengambil Hasil

Apa pun yang dikembalikan fungsi Anda menjadi nilai Future. Nilai tersebut secara otomatis disalin kembali ke isolat utama.

Error Diteruskan ke Atas

Jika pekerjaan melempar error, Future ditolak. Bungkus await Anda dalam try/catch untuk menangani kegagalan tepat di tempat pemanggilannya.

try {
  final r = await Isolate.run(risky);
} catch (e) {
  print('failed: $e');
}

Biaya Memulai

Setiap Isolate.run membuat dan kemudian mematikan sebuah isolat. Proses ini memiliki overhead, sehingga sepadan untuk pekerjaan yang benar-benar berat, bukan tugas kecil.

Kapan Cocok

Gunakan Isolate.run saat Anda memiliki satu pekerjaan besar yang mandiri. Untuk komunikasi dua arah yang terus berlangsung, isolat penuh lebih cocok.

Cek Cepat

Apa yang dikembalikan oleh Isolate.run?

Ringkasan

Isolate.run memindahkan satu fungsi berat ke isolat lain, menunggu hasilnya, menyalin hasil tersebut kembali, lalu melakukan pembersihan. Inilah cara paling sederhana untuk menjalankan tugas secara paralel. ✅

Pertanyaan yang Sering Diajukan

Apakah pelajaran “Isolate.run untuk Pemindahan Pekerjaan Cepat” gratis?

Ya — teks lengkap “Isolate.run untuk Pemindahan Pekerjaan Cepat” gratis dibaca di sini di web. Untuk praktiknya secara interaktif (editor kode bawaan dan tutor AI 24/7) dan buka sisa kursus Dart Academy, upgrade ke CoddyKit PRO. Kursus Dart Academy mencakup 4 pelajaran total.

Apa yang akan aku pelajari di “Isolate.run untuk Pemindahan Pekerjaan Cepat”?

Menjalankan fungsi di luar isolate utama Kamu berlatih Dart Academy dengan kode praktik yang langsung kamu jalankan di browser, dan tutor AI 24/7 menjawab pertanyaanmu saat kamu mengerjakan pelajaran ini.

Apakah aku perlu pengalaman untuk memulai Dart Academy?

Tidak diperlukan pengalaman sebelumnya. Dart Academy di CoddyKit dirancang untuk pemula hingga pelajar tingkat lanjut, jadi kamu bisa memulai di sini atau dari awal dan belajar sesuai kecepatan kamu sendiri. Ini adalah pelajaran 2 dari 4.

Berapa lama pelajaran “Isolate.run untuk Pemindahan Pekerjaan Cepat” memakan waktu?

Sebagian besar pelajaran CoddyKit memakan waktu sekitar 5–10 menit. Setiap pelajaran ringkas dan interaktif, jadi kamu membuat kemajuan stabil dan melanjutkan dari tempat kamu tinggalkan di web dan aplikasi.

Bisakah aku menulis dan menjalankan kode dalam pelajaran Dart Academy ini?

Ya. Setiap pelajaran Dart Academy menyertakan editor kode bawaan, jadi kamu menulis dan menjalankan kode nyata langsung di browser dan mendapatkan umpan balik AI instan — tidak diperlukan penyiapan lokal.

Semua pelajaran dalam kursus ini

  1. Mengapa Isolate, Bukan Thread
  2. Isolate.run untuk Pemindahan Pekerjaan Cepat
  3. Membuat Isolate dan Mengirim Pesan
  4. Tugas Berat Komputasi Tanpa Jank
← Kembali ke Dart Academy