Päivittäisessä kehityksessä voimme käyttää jonoja, jotka ovat tallennusrakenne, joka mahdollistaa "ensimmäisenä sisään, ensimmäisenä ulos" -toimintoa.
Sovellusskenaariot: kirjoita lokeja, lähetä sähköposteja jne
Jos meidän täytyy tallentaa jokaisen käyttäjän käyttöliittymäloki pyytäessään tietojamme, meidän ei tarvitse kirjoittaa lokia joka kerta, kun käyttäjä pyytää sitä, vaan voimme laittaa lokin sisällön jonoon ja antaa muiden säikeiden suorittaa sen, jotta sovelluksen tehokkuus ei heikkenisi.
Toinen etu on, että samanaikaisuuden tapauksessa datan lisääminen jonoon yhden säikeen käyttäminen jonon datan suorittamiseen voi välttää monia poikkeuksia; jos samanaikaisuus (monisäikeinen), pääsy samaan fyysiseen tiedostoon aiheuttaa poikkeuksia. (saatavuuden mukaan)
Jonon universaali lähestymistapa:
Tämä on abstrakti luokka, ja sinun täytyy periä tämä abstraktioluokka ja toteuttaa Execute-abstraktiometodi. Koska en tiedä, millaista dataa haluat käsitellä, tässä käytetään geneerisiä tietoja, eli entiteetti on merkkijonotyyppiä, metodiparametrit merkkijonotyyppiä ja käsittelemäsi data on merkkijonotyyppistä dataa.
ConcurrentQueue-säiketurvallinen jono varmistaa, ettei monisäikeisessä ympäristössä ole poikkeuksia.
ManualResetEvent ohjaamaan säikeen signaalia,Aiemmin tarkistimme jonon datan varalta muutaman sekunnin tai minuutin väleinNyt lisäämme tiedot jonoon ja meidän tarvitsee vain välittää signaali!
Käyttö:
(Loppu)
|