Jump to content
Forumu Destekleyenlere Katılın ×
Paticik Forumları
2000 lerden beri faal olan, çok şukela bir paylaşım platformuyuz. Hoşgeldiniz.

java thread kullanımı


Öne çıkan mesajlar

Mesaj tarihi:
javada frame/text bazlı amatörce bir oyun yazmaya başladım biraz daha dile hakim olup kendimi geliştirmek için, daha da çok başlardayım ama thread kullanımı hakkında yardıma ihtiyacım var. netten biraz bakınıp bişiler yazdım ama ne kadar doğru implement ettim bilmiyorum.
ilgili kod bölümü:
http://codepaste.net/zaxy1w

basitçe yapmasını istediğim olay, turn player'dayken, player framedeki button a tıklayana kadar threadin durması(combatthread.stop ?), buttona clickledikten sonra turn'ün npcye geçip threadin tekrar baştan başlaması(combatthread.start).
ama button'ın içindeki combatthread.start da:
"Exception in thread "AWT-EventQueue-0" java.lang.IllegalThreadStateException"
hatasını alıyorum.
Mesaj tarihi:
aynı hatayı alıyorum sleeple de
bir de yapmasını istediğim şey sleepden farklı, sleepde belirli bir süre durup kaldığı yerden devam ediyor süre bitince(bildiğim kadarıyla), ama ben sürenin buttona tıklanınca bitmesini ve en baştan başlamasını istiyorum
Mesaj tarihi:
Öncelikle herhangi bir class'ın metodlarını kullanmadan önce API okumanı tavsiye ederim. Thread#stop() 'un deprecated olduğunu ve kullanılmaması gerektiğini görüyorsun mesela orda: Thread#stop()

Ek olarak onun yerine ne kullanmak gerektiğini de yazmışlar: http://download.oracle.com/javase/1.4.2/docs/guide/misc/threadPrimitiveDeprecation.html

Stop/Start öyle kafana göre thread'i durdurup devam ettirmek için değil. Koda tam bakmadım ama tahminen tuşa basılana kadar thread'in durmasını istiyorsun. Thread'in durmasını ya da devam etmesini bir değişken ile kontrol edebilirsin. While döngüsünde sleep kullanarak belirli intervaller ile bu değişkene bakıp ona göre uyumaya devam edersin ya da işini yaparsın. Bu değişkene erişirken synchronized kullanman gerekebilir.

Edit: Ayrıca öyle herhangi bir thread'den swing widget'larına erişmemen gerekiyor. Şuna bir gözat: http://java.sun.com/products/jfc/tsc/articles/threads/threads1.html
Mesaj tarihi:
Dogru wait istedigin amac icin cok daha uygun. Sleep thread senkronize etmek icin degil de bir sonraki yapcagin is icin belli bir süre beklemek icin kullaniliyor genelde.
×
×
  • Yeni Oluştur...