Swing ja SWT / Säikeet
Swing ja SWT eivät ilmeisesti kumpikaan ole säieturvallisia.
Siksipä:
Jos swingissä ja/tai swt:ssä GUI -lomakkeelle lisätään 2 metodia:
public saieTurvallinen() {
// tähän koodia. joka päivittää näyttöä, esim. jonkin lomakkeella olevan Labelin tekstiominaisuuden tai lisää uuden rivin moniriviseen tekstikenttään tai Listboxiin
}
public vierasSaie() {
// Mitä ???? TÄHÄN pitäisi kirjoittaa, jotta metodia saieTurvallinen() kutsuttaisiin mahdollisimman pian, mutta kutsuminen tehtäisiin siitä säikeestä käsin, josta käsin GUI -liittymän päivitys on turvallista, siitä huolimatta, Että vierasSaie() -metodia on voitu kutsua mistä säikeestä käsin tahansa !
}
Löytyykö vastausta tähän ?
Swing ja SWT / Säikeet
1
369
Vastaukset
- fidel1
Jos lukisit niitä linkkejä, mitä sulle lähetetään..
No, yksinkertaisin tapaus:
public vierasSaie() {
SwingUtilities.invokeLater(new Runnable() {
public void run() {
saieTurvallinen();
}
});
}
Voit käyttää myös SwingUtilities.invokeAndWait-metodia, joka jää odottelemaan, kunnes rutiinin suoritus päätyy.
Jos haluat tehdä jonkun pidemmän operaation ilman että GUI-päivitys jää jumiin, käytä sitä paljon puhuttua SwingWorker-luokkaa. SwingWorkerin doInBackground-metodiin laitetaan varsinainen toiminta, joka ei saa haitata käyttöliittymän toimintaa ja process- ja/tai done-metodeihin käyttöliittymän päivitys.
Näillä keinoilla käyttöliittymän päivitys tapahtuu aina siinä säikeessä, jossa se on turvallista (Event Dispatch Thread)
Ketjusta on poistettu 0 sääntöjenvastaista viestiä.
Luetuimmat keskustelut
- 2024168
SDP haluaa 40 000 nettomaahanmuuttajaa
SDP:n Suunnanmuutos-vaihtoehtobudjetissa, käy ilmi, että demarit itse asiassa vaativat räjähdysmäistä ”työperäisen” maah1453756Orpo: Velkajarrua vastustavaa puoluetta vaikea ajatella hallitukseen
No Minja Koskelan kommunistipuolue jäi ulos tuosta. Kaikki eduskuntapuolueet vasemmistoliittoa lukuun ottamatta sopivat703087Hienoa! Eduskunta luopui käteisen käytöstä
Nyt tuo sama muutos pitää saada myös muuhun yhteiskuntaan. Käteistähän ei tarvitse tänä päivänä enää kuin rikolliset.431549Orpo loukkaantui fasismiin viittaavasta sanavalinnasta
Mutta miksi loukkaantui? Orpohan on tehnyt yhteistyötä fasistien kanssa jo vuonna 2019, siis jo neljä vuotta ennen loukk271331Sulla on avaimet ja keinot
Jos haluat jatkaa tutustumista. Itse olen niin jäässä etten pysty tekemään enää mitään. Pidempi keppi johon on helpompi211301Ikävä sinua mies
Vuosia kuluu, mutta tunteet ei ole hävinnyt. Tasoittuneet toki, kun ei olla nähty. Järki palannut päähän kuitenkin. Se i191298Mikä tämä henkilö mahtaa touhuta Parkanossa
Kamalaa https://www.ylasatakunta.fi/teksti/pirkanmaan-karajaoikeus-vangitsi-koiran-tappamisesta-epaillyn-6.68.127794.b58321287Kiinnostaa - ei kiinnosta - kiinnostaapas
Selittäkää hämmentyneelle miksi miehiä ei ikinä kiinnosta silloin, kun sitä olisi itsekin kiinnostunut? Sitten kun siirt1151098Martina haluaa Marbellaan
Martinan tekisi mieli ottaa lennot Marbellaan, jossa näkisisi kauniita ja hyväntuulisia ihmisiä. No sitten pitää matkust2151033