Omlouvám se, jestli mi něco uniká. Ale to opravdu voláte SQL příkazy jako obsluhu událostí v hlavním threadu? Protože pokud ano, pak celé GUI "vytuhne" (včetně překreslování) do doby, než SQL doběhne. Což bývá jedna z nejčastějších chyb a důvod pro tvrzení "Java gui je pomalé".
Nerozumím větě. Je postavená stylem "IBM koupilo HP".
Tvrdíte, že SQL operace způsobí vytuhnutí GUI bez ohledu na to, zda Java GUI je pomalé nebo ne? To by byla pravda, proto se SQL operace nemají dělat v EventDispatchThreadu.
Nebo tvrdíte, že GUI Javy je pomalé i bez špatného použití SQL? Protože to je pravda jen napůl. S SQL v hlavním threadu rázem místo odezvy v řádu stovek milisekund máte odezvu v řádu sekund, někdy i minut, během kterých "aplikace neodpovídá", nefunguje klávesnice a nejde klikat. A to už je dost velký rozdíl oproti "obvyklé pomalosti".
Speciálně pro Vás ještě jednou: Java GUI je pomalé i když aplikace vůbec nepracuje s DB.
Zablokování hlavního vlákna SQL dotazem příliš nevadí, protože v tu dobu obvykle uživatel nemá kam klikat a kam co psát, mohl by si nanejvýš šoupat oknem. Můžete to samozřejmě dát do samostatného vlákna a v hlavním vlákně mezitím animovat teploměr, na výsledku to nic nezmění.
Muze pouzivat vsechny casti UI, ktere nezaviseji na te operaci? Muze ji zrusit? Muze resizovat okno a jeho obsah se mu presklada na novou velikost?
Hele, jak se pouzivaji thready v awt, swingu.. to je yu tohohle tematu zaklad. Muzes si o tom precist tady: https://docs.oracle.com/javase/tutorial/uiswing/concurrency/index.html
No a dostáváme se k tomu, že v DB aplikacích takové části nebývají. Dovolit zahájit uživateli paralelně další SQL se přímo zakazuje. Zrušit operaci se povoluje jenom v odůvodněných případech, tam je to jasný případ na vlákna.
Technické záležitosti jsou mi jasné, jen mě zajímalo jaké moudro se dozvím :-)
Ako vy implementujete taketo operacie v jave?
Lebo:
Spustite si SQL v main threade.
Nech to rata par sekund.
Nech to vytuhne.
Kedze vam to bezi, ani neprekreslite teplomer
O chvilu mate sive okno.
Alebo ho ani nezavriete.
To iste vypustite network query kde mate velku latenciu.
Teraz co?
sql operacie v main threade su v clankoch vo velkom cervenom ramceku
java gui by bolo dost rychle keby sa nedialo toto
btw v androide vam aplikacia co robi i/o v hlavnom threade zdochne rovno pri spusteni aby vam vysvetlila ze to sa nerobi
inak serial sa zlepsuje. lebo sa v nom neprogramuje az tolko
Redakcia, pan Krcmar, prosim Vas, ukoncite tento serial. Javisti novacikovia, ktori sa v programatorskej brandzi pohybuju, ako ja, sa tomuto serialu vyhybaju a javisti novacikovia, ktori ziadne skusenosti nemaju si tu len ziskaju zle navyky a poskodia svoje meno v momente kedy niekto skusenejsi uvidi ich kod inspirovany tymto serialom.
Uz to nema cenu.
Mam k tomuto tvojmu prispevku jednu poznamku. Mozno mas pravdu, tiez to necitam, ale napis ty clanok. Ak nie, nemas pravo toto ziadat. Kolko ludi ma kopec poznamok o hovnokod.cz ale poriadnych clankov je ako safranu. Ked je tu tolko odbornikov co kricia takto nie, preco tu nieje kopa clankov "Takto ano"? Tak to zober ty, napis clanok "Ja by som to robil takto!" a ukaz nam to.
No ved dobre, dobre. Ja len ze tych kritikov je tu spusta ale ziaden tu este neukazal svoje dielo. Vies ono je to lachke hovorit co je zle. Ja by som rad videl kod po tych co tu kritizuju. A cim viac, tym radsej by som si to pozrel. Len aby to potom neskoncilo prave na tej spominanej stranke. Chod sa schvalne pozriet do diskusie pod tie Tisnovskeho clanky o ARM-Mx. Pani tam aj skritizovali vyrobcov, aj opravili autora, aj upresnili, aj som sa nieco dozvedel, a pritom boli mimoriadne slusni. Zato z prispevku "zastavte tento serial" som sa v momente pripravil na OCPJP skusku.
U minulých dílů diskutující měli konstruktivní připomínky, které mohl autor nebo na ně alespoň nějak reagovat. Ale vzhledem k tomu, že to vypadá, že je ke komentářům hluchý, tak proč se namáhat? Chyby, které byly kritizovány předtím tam jsou pořád. A není to o tom, že by autor použil technologii A a diskutující preferoval technologii B, ani zjednodušení pro výukové účely. Jsou to prostě věci, které jsou špatně. Pak tedy nezbývá nic jiného, než co bylo napsáno výše. Poprosit redakci rootu, aby to ukončila, protože opravdu jedinná hodnota tohoto seriálu je "tu ne přátelé" :-(
Jediný kdo tak nějak provedl kvalitní kritiku s popisem u tohoto seriálu je zatím perceptron a to teprve v minulém díle (viz. http://www.root.cz/clanky/programovani-v-javafx-zobrazeni-ruznych-typu-dat-uvod-do-crud/nazory/#newIndex1) a to nejspíš proto, že si uvědomil že zkritizovat bez argumentů je skutečně jenom výkřik do tmy.
Opětovně mě dostává natvrdlost některých čtenářů a jejich kritika, sice se opakuji ale kvalita seriálu na toto téma byla zjevná už na začátku( 1, příp. 2 díl ). Fakt nechápu proč to pořád řešíte.