Tapahtumien määritelmä C#:ssa:
Luokka tai olio voi ilmoittaa tapahtumien kautta muille luokille tai olioille tapahtuneesta. Luokkaa, joka lähettää (tai aiheuttaa) tapahtuman, kutsutaan "liikkeeseenlaskijaksi" ja luokkaa, joka vastaanottaa (tai käsittelee) tapahtuman, kutsutaan "tilaajaksi".
Tapahtumilla on seuraavat ominaisuudet:
- Julkaisija päättää, milloin tapahtuma nostetaan, ja tilaaja päättää, mitä toimenpiteitä tehdään tapahtuman seurauksena.
- Tapahtumalla voi olla useita tilaajia. Tilaaja voi käsitellä useita tapahtumia useilta myöntäjiltä.
- Tilaamattomia tapahtumia ei koskaan kutsuta.
- Tapahtumia käytetään usein kertomaan käyttäjille toiminnoista, kuten nappien painalluksista tai valikon valintatoiminnoista graafisissa käyttöliittymissä.
- Jos tapahtumalla on useita tilaajia, useita tapahtumankäsittelijöitä kutsutaan samanaikaisesti, kun tapahtuma nostetaan. Tapahtumien kutsumiseksi asynkronisesti katso Calling Synchronization Methods Using Asynchronous.
- Tapahtumasynkronointisäikeitä voidaan hyödyntää.
Tapahtumaavainsanaa käytetään julkaisijaluokan tapahtumien ilmoittamiseen.
MS-linkki:Hyperlinkin kirjautuminen on näkyvissä.
Tapahtumakirjoitusmenetelmän A ja kirjoitusmenetelmän B välillä ei ole eroa!
Voit viitata seuraaviin paikkoihin:Hyperlinkin kirjautuminen on näkyvissä.
EventHandler<T>Esittää metodia, joka hyväksyy kaksi parametria (objektilähettäjä, TEventArgs e) ja palauttaa tyhjiötyypin. missä TEventArgs on oltava tyyppi, joka on johdettu EventArgs-luokasta. Jälkimmäistä parametria käytetään tapahtuman tarvittavien parametrien tallentamiseen.
EventArgson luokan perusluokka, joka sisältää tapahtumadataa, joka ei sisällä tapahtumadataa, ja sitä käyttävät tapahtumat, jotka eivät välitä tilatietoa tapahtumakäsittelijälle tapahtuman noston yhteydessä. Jos tapahtumankäsittelijä tarvitsee tilatietoja, sovelluksen on johdettava luokka tästä luokasta datan säilyttämiseksi.
Volatile. Lue .NET 4.0 ei ole tuettu
// Yhteenveto: Objektiviittaukset luetaan annetusta kentästä. Kun järjestelmässä sitä tarvitaan, lisätään muistisuoja, joka estää prosessoria järjestämästä muistitoimintoja uudelleen, kuten alla on esitetty: Jos tämä menetelmä näkyy koodissa luku-/kirjoitustoiminnon jälkeen, prosessori ei voi siirtää sitä ennen tätä menetelmää. // Parametrit: Sijainti: Kentät luettavaksi. // Tyyppiparametrit: T: Kentän tyyppi, jota luetaan. Tämän täytyy olla referenssityyppi, ei arvotyyppi. // Palautustulokset: Lue viite T. Tämä viittaus kirjoitetaan millä tahansa tietokoneen prosessorilla, riippumatta prosessorien määrästä tai prosessorin välimuistin tilasta. [LuotettavuusSopimus (Johdonmukaisuus.Ei KorruptioValtio, Tarkastus Onnistuminen)] [SecuritySafeCritical] [TargetedPatchingOptOut ("Suorituskyky kriittinen NGen-kuvien rajojen ylittämiseksi")] julkinen staattinen T <T>Read (viite T sijainti), missä T : luokka;
|