Kelas EventSource
Mewakili peristiwa non-tangkas. EventSource
fungsi anggota menambahkan, menghapus, dan memanggil penanganan aktivitas. Untuk peristiwa yang tangkas, gunakan AgileEventSource.
Sintaks
template<typename TDelegateInterface>
class EventSource;
Parameter
TDelegateInterface
Antarmuka ke delegasi yang mewakili penanganan aktivitas.
Anggota
Konstruktor Publik
Nama | Deskripsi |
---|---|
EventSource::EventSource | Menginisialisasi instans baru kelas EventSource . |
Metode Publik
Nama | Deskripsi |
---|---|
EventSource::Add | Menambahkan penanganan aktivitas yang diwakili oleh antarmuka delegasi yang ditentukan ke kumpulan penanganan aktivitas untuk objek saat ini EventSource . |
EventSource::GetSize | Mengambil jumlah penanganan aktivitas yang terkait dengan objek saat ini EventSource . |
EventSource::InvokeAll | Memanggil setiap penanganan aktivitas yang terkait dengan objek saat ini EventSource menggunakan jenis argumen dan argumen yang ditentukan. |
EventSource::Remove | Menghapus penanganan aktivitas yang diwakili oleh token pendaftaran peristiwa yang ditentukan dari kumpulan penanganan aktivitas yang terkait dengan objek saat ini EventSource . |
Anggota Data yang Dilindungi
Nama | Deskripsi |
---|---|
EventSource::addRemoveLock_ | Menyinkronkan akses ke array targets_ saat menambahkan, menghapus, atau memanggil penanganan aktivitas. |
EventSource::targets_ | Array dari satu atau beberapa penanganan aktivitas. |
EventSource::targetsPointerLock_ | Menyinkronkan akses ke anggota data internal bahkan saat penanganan aktivitas untuk EventSource ini ditambahkan, dihapus, atau dipanggil. |
Hierarki Warisan
EventSource
Persyaratan
Header: event.h
Namespace: Microsoft::WRL
EventSource::Add
Menambahkan penanganan aktivitas yang diwakili oleh antarmuka delegasi yang ditentukan ke kumpulan penanganan aktivitas untuk objek saat ini EventSource
.
HRESULT Add(
_In_ TDelegateInterface* delegateInterface,
_Out_ EventRegistrationToken* token
);
Parameter
delegateInterface
Antarmuka ke objek delegasi, yang mewakili penanganan aktivitas.
token
Ketika operasi ini selesai, handel yang mewakili peristiwa. Gunakan token ini sebagai parameter ke metode Remove() untuk membuang penanganan aktivitas.
Tampilkan Nilai
S_OK jika berhasil; jika tidak, HRESULT yang menunjukkan kesalahan.
EventSource::addRemoveLock_
Menyinkronkan akses ke array targets_ saat menambahkan, menghapus, atau memanggil penanganan aktivitas.
Wrappers::SRWLock addRemoveLock_;
EventSource::EventSource
Menginisialisasi instans baru kelas EventSource
.
EventSource();
EventSource::GetSize
Mengambil jumlah penanganan aktivitas yang terkait dengan objek saat ini EventSource
.
size_t GetSize() const;
Tampilkan Nilai
Jumlah penanganan aktivitas di targets_.
EventSource::InvokeAll
Memanggil setiap penanganan aktivitas yang terkait dengan objek saat ini EventSource
menggunakan jenis argumen dan argumen yang ditentukan.
void InvokeAll();
template <
typename T0
>
void InvokeAll(
T0arg0
);
template <
typename T0,
typename T1
>
void InvokeAll(
T0arg0,
T1arg1
);
template <
typename T0,
typename T1,
typename T2
>
void InvokeAll(
T0arg0,
T1arg1,
T2arg2
);
template <
typename T0,
typename T1,
typename T2,
typename T3
>
void InvokeAll(
T0arg0,
T1arg1,
T2arg2,
T3arg3
);
template <
typename T0,
typename T1,
typename T2,
typename T3,
typename T4
>
void InvokeAll(
T0arg0,
T1arg1,
T2arg2,
T3arg3,
T4arg4
);
template <
typename T0,
typename T1,
typename T2,
typename T3,
typename T4,
typename T5
>
void InvokeAll(
T0arg0,
T1arg1,
T2arg2,
T3arg3,
T4arg4,
T5arg5
);
template <
typename T0,
typename T1,
typename T2,
typename T3,
typename T4,
typename T5,
typename T6
>
void InvokeAll(
T0arg0,
T1arg1,
T2arg2,
T3arg3,
T4arg4,
T5arg5,
T6arg6
);
template <
typename T0,
typename T1,
typename T2,
typename T3,
typename T4,
typename T5,
typename T6,
typename T7
>
void InvokeAll(
T0arg0,
T1arg1,
T2arg2,
T3arg3,
T4arg4,
T5arg5,
T6arg6,
T7arg7
);
template <
typename T0,
typename T1,
typename T2,
typename T3,
typename T4,
typename T5,
typename T6,
typename T7,
typename T8
>
void InvokeAll(
T0arg0,
T1arg1,
T2arg2,
T3arg3,
T4arg4,
T5arg5,
T6arg6,
T7arg7,
T8arg8
);
template <
typename T0,
typename T1,
typename T2,
typename T3,
typename T4,
typename T5,
typename T6,
typename T7,
typename T8,
typename T9
>
void InvokeAll(
T0arg0,
T1arg1,
T2arg2,
T3arg3,
T4arg4,
T5arg5,
T6arg6,
T7arg7,
T8arg8,
T9arg9
);
Parameter
T0
Jenis argumen penanganan aktivitas ke-nol.
T1
Jenis argumen penanganan aktivitas pertama.
T2
Jenis argumen penanganan aktivitas kedua.
T3
Jenis argumen penanganan aktivitas ketiga.
T4
Jenis argumen penanganan aktivitas keempat.
T5
Jenis argumen penanganan aktivitas kelima.
T6
Jenis argumen penanganan aktivitas keenam.
T7
Jenis argumen penanganan aktivitas ketujuh.
T8
Jenis argumen penanganan aktivitas kedelapan.
T9
Jenis argumen penanganan aktivitas kesembilan.
arg0
Argumen penanganan aktivitas ke-nol.
arg1
Argumen penanganan aktivitas pertama.
arg2
Argumen penanganan aktivitas kedua.
arg3
Argumen penanganan aktivitas ketiga.
arg4
Argumen penanganan aktivitas keempat.
arg5
Argumen penanganan aktivitas kelima.
arg6
Argumen penanganan aktivitas keenam.
arg7
Argumen penanganan aktivitas ketujuh.
arg8
Argumen penanganan aktivitas kedelapan.
arg9
Argumen penanganan aktivitas kesembilan.
EventSource::Remove
Menghapus penanganan aktivitas yang diwakili oleh token pendaftaran peristiwa yang ditentukan dari kumpulan penanganan aktivitas yang terkait dengan objek saat ini EventSource
.
HRESULT Remove(
EventRegistrationToken token
);
Parameter
token
Handel yang mewakili penanganan aktivitas. Token ini dikembalikan ketika penanganan aktivitas didaftarkan oleh metode Add().
Tampilkan Nilai
S_OK jika berhasil; jika tidak, HRESULT yang menunjukkan kesalahan.
Keterangan
Untuk informasi selengkapnya tentang EventRegistrationToken
struktur, lihat topik Windows::Foundation::EventRegistrationToken Structure dalam dokumentasi referensi Windows Runtime .
EventSource::targets_
Array dari satu atau beberapa penanganan aktivitas.
ComPtr<Details::EventTargetArray> targets_;
Keterangan
Ketika peristiwa yang diwakili oleh objek saat ini EventSource
terjadi, penanganan aktivitas dipanggil.
EventSource::targetsPointerLock_
Menyinkronkan akses ke anggota data internal bahkan saat penanganan aktivitas untuk ini EventSource
ditambahkan, dihapus, atau dipanggil.
Wrappers::SRWLock targetsPointerLock_;
Saran dan Komentar
https://aka.ms/ContentUserFeedback.
Segera hadir: Sepanjang tahun 2024 kami akan menghentikan penggunaan GitHub Issues sebagai mekanisme umpan balik untuk konten dan menggantinya dengan sistem umpan balik baru. Untuk mengetahui informasi selengkapnya, lihat:Kirim dan lihat umpan balik untuk