-
Anonim
Potrzebuje małej pomocy. Musze napisać program ktory bedzie wielowątkowy. Bedzie posiadał przycisk start stop. I progress bar.
Wszystko w bibliotece SWT. W momencie nacisniecia start ma byc wykonywane jakies obliczenie bez znaczenia jakie. A drugi watek ma wypelniac progress bara zgodnie postepem w obliczeniach. Nie moze to by zrobione w jednym watku. (progress zamrozi program).
Jak ktos ma chec mi pomoc bede bardzo wdzieczny :) -
Ja nie istnieje (FURBY)
a nie mozesz zrobic tak ze masz jeden main watek z progresem i jak ktos klika przycisk start to uwalnia sie watek lcizacy a na main watku wlancza sie wiecznie biegajacy proges tak jak na starcie windowsa xp :) i po skonczeniu sie go wylacza :) taki pomysl -
Anonim
problem jest taki ze mam taki wymog odgorny ze musze wykorzystac 2 watek. Wydaje mi sie ze trzeba wykorzastac interfejs runnable. Musi byc to niestety aplikacja wielowatkowa -
Ja nie istnieje (FURBY)
toć ja mowilem o 2 watkach... :D a interfejs :D stary wiesz wogole jak odplic 2 watek ? -
-
Anonim
no wlasnie z tym mam problem hyhy siedzie nad thinking in java i ucze sie wspolbieżności. Wlasnie niewiem jak z tym sobie poradzic :) -
Adept
>Ja nie istnieje (FURBY) napisał
>a na main watku wlancza sie wiecznie biegajacy
sorry za OT ale ludzie!!!! bez przesady!!! WLANCZA?????? dbajcie chociaż w najmniejszym stopniu o ort!!
-
Anonim
a spojrzales w ogole w google?
"how to use threads java"
pierwszy link
http://java.sun.com/docs/books/tuto...
have fun. -
boska renia
Generalnie bardzo uważaj na wielowątkowość we frameworkach GUI. W Swing/AWT wszelkie operacje na obiektach graficznych (np. zmiana postępu progres bara) muszą być wykonywane w głównym wątku procesu GUI! W tym sensie mówi się o AWT/Swingu że są jednowątkowe. Podobnie jest chyba i w SWT?
Jesli chcesz wiedziec wiecej o synchronizacji w Swing/AWT przegoogluj dwa hasła: invokeLater(Runnable) invokeAndWait(Runnable). Nie radzę korzystać z wielowątkowości w Swingu JRE 5 - sporo błędów, poprawionych w wersji JRE 6.
Przykladowo, aby zupdajtować progress bara z innego wątku należy wykonać coś a la (pisane z głowy, nie z Eclipsa):
[jeden z wątków użytkownika]
final int postep = 12;
SwingUtilities.invokeAndWait( new Runnable(){
public void run (){
mojeOkno.getProgressBar1().set Progress(postep);
}
});
Metoda invokeAndWait blokuje wywołanie, natomiast invokeLater nie blokuje. Oczywiście wywołanie jednej z tych metod w wątku GUI wyrzuca błąd.
W ten sposób zapewniamy synchronizację z wątkiem GUI Swinga. Dla AWT metody te są w klasie AwtUtils (Swing de facto z nich korzysta).
- Przeglądaj grona w kategorii Internet i Komputery
- Przeglądaj grona w okolicy Warszawa
- Załóż własne grono tematyczne
- Zostań moderatorem
Podobne Tematy
|
|
Wszystko co związane z programowaniem w Java (J2EE, JSP, JDBC, itd) test
Miejsca grona (1)
-
Kino Luna ul. Marszałkowska, Warszawa
www.kinoluna.pl kino.luna@maxfilm.com.pl 22 621 78 28
- Dodaj miejsce

