Torna indietro   Hardware Upgrade Forum > Software > Programmazione

WoW: Midnight, Blizzard mette il primo, storico mattone per l'housing e molto altro
WoW: Midnight, Blizzard mette il primo, storico mattone per l'housing e molto altro
Con Midnight, Blizzard tenta il colpaccio: il player housing sbarca finalmente su Azeroth insieme a una Quel'Thalas ricostruita da zero. Tra il dramma della famiglia Ventolesto e il nuovo Prey System, ecco com'è la nuova espansione di World of Warcraft
Ecovacs Goat O1200 LiDAR Pro: la prova del robot tagliaerba con tagliabordi integrato
Ecovacs Goat O1200 LiDAR Pro: la prova del robot tagliaerba con tagliabordi integrato
Nuova frontiera per i robot tagliaerba, con Ecovacs GOAT O1200 LiDAR Pro che riconosce l'ambiente in maniera perfetta, grazie a due sensori LiDAR, e dopo la falciatura può anche rifinire il bordo con il tagliabordi a filo integrato
Recensione Samsung Galaxy S26+: sfida l'Ultra, ma ha senso di esistere?
Recensione Samsung Galaxy S26+: sfida l'Ultra, ma ha senso di esistere?
Equilibrio e potenza definiscono il Samsung Galaxy S26+, un flagship che sfida la variante Ultra e la fascia alta del mercato con il primo processore mobile a 2nm. Pur mantenendo l'hardware fotografico precedente, lo smartphone brilla per un display QHD+ da 6,7 pollici d'eccellenza, privo però del trattamento antiriflesso dell'Ultra, e per prestazioni molto elevate. Completano il quadro la ricarica wireless a 20W e, soprattutto, un supporto software settennale
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 06-07-2007, 09:38   #1
durbans
Junior Member
 
Iscritto dal: Jul 2006
Messaggi: 152
[Java] Risposta immediata Servlet

Dovrei scrivere una servlet Java che quando riceve una richiesta , risponda subito con una risposta NULL (nel senso che non mi interessa il contenuto della risposta) al client, pero' poi continui a fare altre cose (scrittura su DB).

Devo creare a mano un thread che gestisca la scrittura su DB , mentre nell'altro flusso torno null ?
durbans è offline   Rispondi citando il messaggio o parte di esso
Old 06-07-2007, 09:46   #2
k0nt3
Senior Member
 
Iscritto dal: Dec 2005
Messaggi: 7262
Quote:
Originariamente inviato da durbans Guarda i messaggi
Dovrei scrivere una servlet Java che quando riceve una richiesta , risponda subito con una risposta NULL (nel senso che non mi interessa il contenuto della risposta) al client, pero' poi continui a fare altre cose (scrittura su DB).

Devo creare a mano un thread che gestisca la scrittura su DB , mentre nell'altro flusso torno null ?
il modo più semplice è scrivere prima sul DB e poi restituire NULL, in questo modo ti assicuri di aver scritto prima di dare la risposta e nel caso fallisce la scrittura puoi anche mandare un messaggio di errore.
comunque il dialogo servlet/DB è diretto?
k0nt3 è offline   Rispondi citando il messaggio o parte di esso
Old 06-07-2007, 09:52   #3
durbans
Junior Member
 
Iscritto dal: Jul 2006
Messaggi: 152
No , appunto, mi serve proprio ritornare subito NULL perche' non mi interessa l'esito della scrittura sul DB (sia che vada bene sia che fallisca) , l'importante e' che la risposta della servlet sia IMMEDIATA per non far attendere troppo.
Il colloquio servlet/db e' diretto.

Cmq la soluzione e' col thread ?
durbans è offline   Rispondi citando il messaggio o parte di esso
Old 06-07-2007, 10:11   #4
k0nt3
Senior Member
 
Iscritto dal: Dec 2005
Messaggi: 7262
Quote:
Originariamente inviato da durbans Guarda i messaggi
No , appunto, mi serve proprio ritornare subito NULL perche' non mi interessa l'esito della scrittura sul DB (sia che vada bene sia che fallisca) , l'importante e' che la risposta della servlet sia IMMEDIATA per non far attendere troppo.
Il colloquio servlet/db e' diretto.

Cmq la soluzione e' col thread ?
mmm ma con che istruzione mandi la risposta NULL? io ho usato le servlet solo in campo WEB.. comunque non è possibile farlo sequenzialmente, cioè prima mandare la risposta e poi scrivere sul DB?
se puoi evitare i thread evitali, altrimenti se proprio devi usali
k0nt3 è offline   Rispondi citando il messaggio o parte di esso
Old 06-07-2007, 13:45   #5
PGI-Bis
Senior Member
 
L'Avatar di PGI-Bis
 
Iscritto dal: Nov 2004
Città: Tra Verona e Mantova
Messaggi: 4553
Come sarebbe "se puoi evitare i Thread evitali"

I Thread sono nostri amici, usali.

Sì, la soluzione è un meccanismo di scrittura asincrono. Crei un oggetto Pippo che accetta una richiesta di scrittura e processa quella richiesta in un Thread diverso da quello che l'ha inviata.

La tua servlet altro non farà che dire:

ilPippo.scrivi(qualcosa);
rispondi NULL;

Essendo asincrono, scrivi restituirà immediatamente il controllo. Per la concreta esecuzione del compito affidatogli, Pippo può usare una coda di consumazione.

E' molto semplice ed efficace.
__________________
Uilliam Scecspir ti fa un baffo? Gioffri Cioser era uno straccione? E allora blogga anche tu, in inglese come me!
PGI-Bis è offline   Rispondi citando il messaggio o parte di esso
Old 06-07-2007, 14:05   #6
k0nt3
Senior Member
 
Iscritto dal: Dec 2005
Messaggi: 7262
Quote:
Originariamente inviato da PGI-Bis Guarda i messaggi
Come sarebbe "se puoi evitare i Thread evitali"

I Thread sono nostri amici, usali.
beh certo ma se è possibile fare:

rispondi(NULL);
scrivi(qualcosa);

io non complicherei ulteriormente usando i thread.. in fondo se a lui non interessa sapere se la scrittura è andata a buon fine può benissimo farla dopo la risposta. inoltre non perde nemmeno tempo perchè rispondi(NULL) credo che non si porti via molto tempo
cioè se è possibile fare in questo modo io non userei un thread in pratica. se invece rispondi corrisponde a una return e per cui non si può eseguire qualcosa dopo, allora il discorso è diverso ed è necessario usare un thread.
k0nt3 è offline   Rispondi citando il messaggio o parte di esso
Old 06-07-2007, 15:38   #7
PGI-Bis
Senior Member
 
L'Avatar di PGI-Bis
 
Iscritto dal: Nov 2004
Città: Tra Verona e Mantova
Messaggi: 4553
Bisognerebbe accordarsi sul termine complicazione. Un consumatore concorrente in Java è roba di venti righe. Per la servlet, scrivi(qualcosa) era e scrivi(qualcosa) rimane.

Considerando poi che la stessa istanza della Servlet gestisce le richieste di più client, scrivere prima di rispondere o rispondere prima di scrivere non cambia i termini del problema. Rispondere prima renderà immediata solo la prima richiesta.
__________________
Uilliam Scecspir ti fa un baffo? Gioffri Cioser era uno straccione? E allora blogga anche tu, in inglese come me!
PGI-Bis è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


WoW: Midnight, Blizzard mette il primo, storico mattone per l'housing e molto altro WoW: Midnight, Blizzard mette il primo, storico ...
Ecovacs Goat O1200 LiDAR Pro: la prova del robot tagliaerba con tagliabordi integrato Ecovacs Goat O1200 LiDAR Pro: la prova del robot...
Recensione Samsung Galaxy S26+: sfida l'Ultra, ma ha senso di esistere? Recensione Samsung Galaxy S26+: sfida l'Ultra, m...
Zeekr X e 7X provate: prezzi, autonomia fino a 615 km e ricarica in 13 minuti Zeekr X e 7X provate: prezzi, autonomia fino a 6...
Marathon: arriva il Fortnite hardcore Marathon: arriva il Fortnite hardcore
TikTok punta tutto sull'Europa: un milia...
OnePlus Nord 6 ufficiale: arriva con una...
Google lancia di nascosto un'app AI che ...
Sony lancia The Playerbase per inserire ...
WhatsApp si aggiorna con una nuova app c...
Windows 11 23H2, ricerca nel menu Start ...
Google Chrome introduce il layout vertic...
Artemis II: per la prima volta degli ast...
Battery swap e flotte smart: così nasce ...
Apple affronta un dilemma con il MacBook...
ECOVACS X11 OMNICYCLONE: 19.500 Pa, moci...
ll nuovo HONOR 600 Lite 5G arriva in Ita...
Kindle, addio allo store sui vecchi e-re...
DJI Flip Combo Fly More a 599€ invece di...
Addio cavi e adattatori multipli: Techly...
Chromium
GPU-Z
OCCT
LibreOffice Portable
Opera One Portable
Opera One 106
CCleaner Portable
CCleaner Standard
Cpu-Z
Driver NVIDIA GeForce 546.65 WHQL
SmartFTP
Trillian
Google Chrome Portable
Google Chrome 120
VirtualBox
Tutti gli articoli Tutte le news Tutti i download

Strumenti

Regole
Non Puoi aprire nuove discussioni
Non Puoi rispondere ai messaggi
Non Puoi allegare file
Non Puoi modificare i tuoi messaggi

Il codice vB è On
Le Faccine sono On
Il codice [IMG] è On
Il codice HTML è Off
Vai al Forum


Tutti gli orari sono GMT +1. Ora sono le: 12:09.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Served by www3v