Mengirim Permintaan I/O ke Target I/O Umum

Driver Anda dapat mengirim permintaan I/O ke target I/O umum baik secara sinkron atau asinkron.

Jika driver mengirim permintaan I/O secara sinkron, utas driver mengirimkan permintaan satu per satu. Utas menunggu setiap permintaan selesai sebelum mengirim yang berikutnya. Proses ini lebih sederhana daripada mengirim permintaan I/O secara asinkron. Driver Anda dapat mengirim permintaan I/O secara sinkron jika tidak mengirim banyak permintaan dan jika performa sistem atau perangkat tidak berkurang saat driver Anda menunggu setiap permintaan I/O.

Jika driver mengirim permintaan I/O secara asinkron, utas driver mengirimkan setiap permintaan segera setelah permintaan siap dikirim, tanpa menunggu permintaan yang dikirim sebelumnya selesai. Jika driver Anda harus menangani banyak permintaan I/O dalam waktu singkat, Anda mungkin tidak dapat mengizinkan driver Anda menunggu setiap permintaan selesai sebelum mengirim permintaan berikutnya. Jika tidak, Anda mungkin kehilangan data atau mengurangi performa perangkat driver Anda dan, mungkin, dari seluruh sistem.

Objek target I/O kerangka kerja menyediakan dua set metode yang dapat dipanggil driver Anda: satu set untuk mengirim permintaan I/O secara sinkron dan yang lain diatur untuk mengirim permintaan I/O secara asinkron.

Untuk masing-masing metode ini, Anda harus menyediakan objek permintaan dan beberapa ruang buffer. Anda dapat menggunakan metode ini untuk meneruskan permintaan yang diterima driver Anda di salah satu antrean I/O-nya atau untuk membuat dan mengirim permintaan baru.