Bagikan melalui


ISynchronizeInvoke Antarmuka

Definisi

Menyediakan cara untuk menjalankan delegasi secara sinkron atau asinkron.

public interface class ISynchronizeInvoke
public interface ISynchronizeInvoke
type ISynchronizeInvoke = interface
Public Interface ISynchronizeInvoke
Turunan

Keterangan

Antarmuka ISynchronizeInvoke menyediakan komunikasi sinkron dan asinkron antara objek tentang terjadinya suatu peristiwa. Objek yang mengimplementasikan antarmuka ini dapat menerima pemberitahuan bahwa suatu peristiwa telah terjadi, dan mereka dapat menanggapi kueri tentang peristiwa tersebut. Dengan cara ini, klien dapat memastikan bahwa satu permintaan telah diproses sebelum mereka mengirimkan permintaan berikutnya yang tergantung pada penyelesaian permintaan pertama.

Kelas ini ISynchronizeInvoke menyediakan dua cara untuk memanggil proses:

  1. Secara asinkron, dengan menggunakan BeginInvoke metode . BeginInvoke memulai proses dan kemudian segera kembali. Gunakan EndInvoke untuk menunggu hingga proses dimulai dengan BeginInvoke selesai.

  2. Secara sinkron, dengan menggunakan Invoke metode . Invoke memulai proses, menunggu hingga selesai, lalu kembali. Gunakan Invoke saat utas utama kontrol berbeda dari utas panggilan untuk melakukan marshal panggilan ke utas yang tepat.

Nota

Atribut HostProtectionAttribute yang diterapkan ke kelas ini memiliki nilai properti berikutResources: | SynchronizationExternalThreading . HostProtectionAttribute tidak memengaruhi aplikasi desktop (yang biasanya dimulai dengan mengklik dua kali ikon, mengetik perintah, atau memasukkan URL di browser). Untuk informasi selengkapnya, lihat HostProtectionAttribute kelas atau Atribut Pemrograman SQL Server dan Perlindungan Host.

Properti

Nama Deskripsi
InvokeRequired

Mendapatkan nilai yang menunjukkan apakah pemanggil harus memanggil Invoke(Delegate, Object[]) saat memanggil objek yang mengimplementasikan antarmuka ini.

Metode

Nama Deskripsi
BeginInvoke(Delegate, Object[])

Secara asinkron menjalankan delegasi pada utas yang membuat objek ini.

EndInvoke(IAsyncResult)

Menunggu hingga proses dimulai dengan panggilan BeginInvoke(Delegate, Object[]) selesai, lalu mengembalikan nilai yang dihasilkan oleh proses.

Invoke(Delegate, Object[])

Secara sinkron menjalankan delegasi pada utas yang membuat objek ini dan melakukan marshal panggilan ke utas pembuatan.

Berlaku untuk

Lihat juga