|
Programiranje Programski jezici, tehnike, alatke... |
|
Alatke vezane za temu | Vrste prikaza |
5.12.2007, 15:03 | #1 |
Član
|
J2ME + Bluetooth server + nevolja sa thread-om
E ovako: pisem neku aplikaciju za mobilne telefone, aplikacija u sebi sadrzi bluetooth server koji treba da ceka dolazece konekcije od drugih uredjaja.
E sad, taj server, to jest jedna linija koda u njemu >>connection1=service1.acceptAndOpen();<< blokira trenutni thread. Sto je normalno, to jest tako i treba da radi. Da bih omogucio da mi ta linija koda ne glavi celu aplikaciju ja sam deo koda koji pretstavlja server stavio u novi thread. E sad SHOCK: umesto da ostatak aplikacije normalno radi, on to ne cini, to jest opet je blokiran od strane servera koji se nalazi u zasebnom thread-u. Moje pitanje je: je li ovo normalno (nemoguce da je); jel' imao neko slicno iskustvo; i uopste koji je vrag glupom serveru, zasto glavi svoj thread i thread u kome se nalazi ostatak aplikacije (GUI...); Poslednja ispravka: anqe1ki11er (5.12.2007 u 18:36) |
6.12.2007, 7:45 | #2 |
Član
Član od: 5.12.2005.
Lokacija: Sombor
Poruke: 245
Zahvalnice: 7
Zahvaljeno 31 puta na 24 poruka
|
Re: J2ME + Bluetooth server + nevolja sa thred-om
Obicno se pri pisanju servera u glavnom threadu stavi beskonacna petlja koja osluskuje klijente, a daemon niti(thread) pravis ako zelis da se radi jos nesto u pozadini+svaki put kreiras po jednu daemon nit kada se nakaci klijent.
E sada sto se tice tvog problema. Da li si siguran da se glavna nit ne prekida posle poziva nove niti koja je kreirana kao non-damon (program se zavrsava kada se zavrse sve njegove non-dameon niti, tako da nema veze sto ti se zavrsi main)? Mozda koristis neki deljeni resus u obe niti, pa si pogresio negde kod lock/unlock-a? Ako nije to, ne bih znao u cemu je problem. Inace, nisam radio ista za mobilne telefone, tako da govorim uopsteno... |
Sledeći korisnik se zahvaljuje korisniku seymourc64 na korisnoj poruci: | ||
anqe1ki11er (6.12.2007) |
6.12.2007, 21:26 | #3 | |
Član
|
Re: J2ME + Bluetooth server + nevolja sa thred-om
Citat:
|
|
8.12.2007, 22:33 | #4 |
Član
|
Re: J2ME + Bluetooth server + nevolja sa thred-om
JA SAM IDIOT. ALI JA SAM DEFINITIVNO IDIOT. Pocinjem da mislim da sam bolji da cuvam ovce, nego da pisem Java code. Posle 3 dana lomljenja mozga sam uocio gde je greska. A greska je u tome sto sam pri pozivanju "servera", koji je u drugom Thread-u od onog u kome je GUI, kucao: Server ser = new Server(); Thread prvi = new Thread(ser); prvi.run(); Umesto: Server ser = new Server(); Thread prvi = new Thread(ser); prvi.start(); Pa je JVM pokrenula server kao metodu druge klase, a ne u novom thread-u. |
Bookmarks sajtovi |
|
|
Slične teme | ||||
tema | temu započeo | forum | Odgovora | Poslednja poruka |
Prebacivanje sajta sa servera na server | tarantula | Internet usluge | 3 | 9.12.2006 21:36 |
Problemi sa bluetooth headsetom | Gowron | Prenosni računari | 0 | 16.10.2006 14:44 |
leadtek Winfast 2000 expert - nemogu da dobijem signal na s-video ulazu sa sat. risiv | ural | Foto i audio/video | 17 | 30.8.2006 1:36 |
Problem sa Bluetooth USB Dongle | Akumu | Kvarovi | 3 | 22.8.2006 23:24 |
MySql problem sa logovanjem na server | Tagwer | Programiranje | 1 | 26.2.2006 14:16 |