0Pricing
C Academy · Pelajaran

Membuat dan Mengelola Thread

Gunakan thread POSIX (pthread) untuk membuat dan mengendalikan thread dalam C.

Membuat dan Mengelola Thread adalah pelajaran C Academy gratis di CoddyKit. Ini adalah pelajaran 2 dari 3. 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 C Academy, dan progresmu tersinkronisasi di web dan aplikasi CoddyKit. Kursus C Academy mencakup 3 pelajaran total.

Membuat dan Mengelola Utas

Membuat dan Mengelola Utas

Dalam pemrosesan multutas, kita membuat beberapa utas untuk menjalankan tugas secara bersamaan.

Dalam pelajaran ini, Anda akan mempelajari:

  • Cara membuat beberapa utas dalam C.
  • Cara menunggu utas menyelesaikan eksekusi.
  • Cara meneruskan argumen ke utas.
Membuat dan Mengelola Thread — ilustrasi 1

Membuat Beberapa Utas

Membuat Beberapa Utas

Kita menggunakan pthread_create() untuk membuat beberapa utas.

Sintaks:

pthread_create(&thread, NULL, function, argument);

Setiap utas berjalan secara mandiri, tetapi berbagi memori dengan utas lainnya.

Contoh: Membuat Beberapa Utas

Contoh: Membuat Beberapa Utas

Program ini membuat beberapa utas yang berjalan secara bersamaan.

#include <stdio.h>
#include <pthread.h>

void *printMessage(void *arg) {
    printf("Thread %d: Hello from thread!\n", *(int*)arg);
    return NULL;
}

int main() {
    pthread_t threads[3];
    int thread_ids[3] = {1, 2, 3};

    for (int i = 0; i < 3; i++) {
        pthread_create(&threads[i], NULL, printMessage, &thread_ids[i]);
    }

    for (int i = 0; i < 3; i++) {
        pthread_join(threads[i], NULL);
    }
    return 0;
}

Menunggu Utas Selesai

Menunggu Utas Selesai

Gunakan pthread_join() untuk menunggu utas selesai.

Sintaks:

pthread_join(thread, NULL);

Tanpa pthread_join(), utas utama mungkin keluar sebelum utas lainnya selesai.

Meneruskan Argumen ke Utas

Meneruskan Argumen ke Utas

Argumen dapat diteruskan ke fungsi utas menggunakan pointer.

Contoh:

pthread_create(&thread, NULL, function, (void*)&value);

Fungsi utas mengonversi kembali argumen tersebut ke tipe aslinya.

Contoh: Meneruskan Argumen ke Utas

Contoh: Meneruskan Argumen ke Utas

Program ini menunjukkan cara meneruskan argumen ke fungsi utas.

#include <stdio.h>
#include <pthread.h>

void *printNumber(void *arg) {
    int num = *(int*)arg;
    printf("Thread received number: %d\n", num);
    return NULL;
}

int main() {
    pthread_t thread;
    int value = 10;
    pthread_create(&thread, NULL, printNumber, &value);
    pthread_join(thread, NULL);
    return 0;
}

Mengakhiri Utas

Mengakhiri Utas

Gunakan pthread_exit() untuk mengakhiri utas secara eksplisit.

Contoh:

pthread_exit(NULL);

Fungsi utama juga sebaiknya memanggil pthread_exit() jika diperlukan.

Praktik Terbaik untuk Mengelola Utas

Praktik Terbaik untuk Mengelola Utas

Untuk mengelola utas secara efisien:

  • Selalu gunakan pthread_join() untuk mencegah penghentian dini.
  • Teruskan argumen menggunakan pointer untuk mencegah kerusakan data.
  • Minimalkan konflik pada sumber daya bersama.

Ringkasan

Ringkasan

Dalam pelajaran ini, Anda telah mempelajari:

  • Cara membuat beberapa utas menggunakan pthread_create().
  • Cara menunggu utas menggunakan pthread_join().
  • Cara meneruskan argumen ke utas.
  • Cara mengakhiri utas dengan aman.

Selanjutnya, kita akan mempelajari sinkronisasi dan kondisi balapan dalam pemrosesan multutas!

Membuat dan Mengelola Thread — ilustrasi 10

Pertanyaan yang Sering Diajukan

Apakah pelajaran “Membuat dan Mengelola Thread” gratis?

Ya — teks lengkap “Membuat dan Mengelola Thread” gratis dibaca di sini di web. Untuk praktiknya secara interaktif (editor kode bawaan dan tutor AI 24/7) dan buka sisa kursus C Academy, upgrade ke CoddyKit PRO. Kursus C Academy mencakup 3 pelajaran total.

Apa yang akan aku pelajari di “Membuat dan Mengelola Thread”?

Gunakan thread POSIX (pthread) untuk membuat dan mengendalikan thread dalam C. Kamu berlatih C 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 C Academy?

Tidak diperlukan pengalaman sebelumnya. C 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 3.

Berapa lama pelajaran “Membuat dan Mengelola Thread” 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 C Academy ini?

Ya. Setiap pelajaran C 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. Pengenalan Thread
  2. Membuat dan Mengelola Thread
  3. Sinkronisasi dan Kondisi Balapan
← Kembali ke C Academy