Visualizza la versione completa : Problema col Flush lezione 5
KitscH2000
10-06-2002, 15:26
Ho scritto ed eseguito il codice riportato nella lezione (leggermente modificato):
<% response.buffer = true %>
<HTML>
<HEAD>
<TITLE> Esempio di Buffer </TITLE>
</HEAD>
<BODY>
<%'
Dim conto
response.write "Prima parte"
response.flush
do while conto < 5000000
conto=conto+1
loop
response.write "<br>Seconda parte " & conto
response.flush
%>
</BODY>
</HTML>
Mettendo come intervallo 1 milione era troppo veloce e non notavo differenze fra la prima e la seconda parte.
Allora ho provato con 5 milioni ed effettivamente ci mette un po' di tempo ma lo schermo rimane bianco fino al completamento del ciclo, dopodichè la prima e la seconda parte mi arrivano contemporaneamente.
please....qualcuno ha qualche idea? :rolleyes:
KitscH2000
10-06-2002, 15:29
Volevo aggiungere che ho provato con il Clear e in effetti questo funziona .... mah :confused:
Ciao, anche a mè appaiono contemporaneamente anche dopo che ho seguito il tuo consiglio sull'aumento di "capitale".
Ma cosa significa "clear", come funzione s'intende
Ciao
KitscH2000
10-06-2002, 16:34
è il metodo per cancellare tutto il contenuto del buffer, dall'inizio fino al punto in cui metti l'istruzione response.clear, oppure dal response.flush precedente fino al response.clear (...forse non sono stato molto chiaro :rolleyes: ma spero di avere reso il concetto ;) )
Ciao
Perfetto. Non avevo capito ancora la seconda parte della lezione. Si mette per cancellare con il "se".
Grazie
Si in effetti avevi dimenticato il comando Response.Clear
Tutto qui ;)
Un salutoneeeeeeee
KitscH2000
10-06-2002, 18:47
:confused: :confused: cioè?? :confused: :confused:
Nell'esempio di cui sto parlando non si usa il response.clear. Da quello che ho capito dalle dispense nel primo esempio dovrebbero semplicemente arrivare le due parti a video in tempi diversi....e ciò non accade. Potrebbe spiegarmi meglio?
thanx :cool:
rossella
10-06-2002, 18:54
Anche io ho fatto diverse prove e i tempi di esecuzione rallentano a seconda della grandezza del numero immesso ma i dati arrivano sempre in contemporanea non scaglionati come dovrebbe essere. :confused:
Anche a me si vede tutto contemporaneamente nell'esempio senza il response.clear...
Ciao tutti
Erica
KitscH2000
11-06-2002, 10:56
Richiamo l'attenzione del prof. sul quesito precedentemente posto e non ancora risolto!
Professò ... è ancora là?? :cool:
Scusate ragazzi ma abbiamo avuto una giornata impegnativa al massimo !! :eek:
aaaaaaaaaaaaaaaaallora :)
Abbiamo dato un'occhiata allo script che avete inserito nel forum e abbiamo constatato che è corretto .... ora :
- Partendo dal presupposto che per motivi vari a volte l'utilizzo del solo Response.Flush non è affidabile
Non capisco perchè non vada :confused:
Utilizzate l'IIS ??? O Il PWS ???
Un Salutone ;)
KitscH2000
11-06-2002, 18:08
Ben tornato prof
utilizzo l'IIS! probabilmente bacato :D
rossella
11-06-2002, 19:14
anche io utilizzo l'IIS perchè cosa cambia?
Il problema è che per chi usa PWS potrebbero sorgere problemi con il Response.Flush :eek:
Il fatto strano è che il Response.Flush ha la funzione di inviare immediatamente i dati contenuti nel buffer e quindi di cancellare tali dati..... mentre con l'istruzione Response.Clear si forza il Buffer a cancellare le informazioni immagazzinate in memoria.....
Abbiamo contattato anche un collega che lavora come sviluppatore in casa Micosoft e effettivamente è rimasto sorpreso pure lui :)
Cmq in questi giorni vi faremo sapere qualcosa in merito in quanto stiamo testando di persona il comando su diversi server
Un salutone ;)
ora va a finire che facciamo qualche nuova scoperta... :D
Per una buona volta la pagina dell'esempio relativo al Flush mi è andata bene al primo colpo. La scritta "La prima parte appare subito" appare immediatamente sullo schermo, seguita dopo un breve intervallo dalla scritta "La seconda parte appare dopo venti secondi". Ho anche aumentato il tempo del contatore ma il risultato è lo stesso di cui sopra, con la differenza che la seconda scritta appare qualche tempo dopo. Come ben sa il Prof io uso PWS e devo fare solo un appuntino piccino picciò: dopo che sono apparse tutte e due le scritte, al termine della prima mi compare il simbolo "<" e non capisco il perché; ho riletto il listato più di una volta ma non riesco a capire da dove sbuchi fuori. Per praticità vi allego il listato, provate anche voi :)
<%Response.Buffer=True%>
<html>
<head>
<title>Esempio del Buffer</title>
<body>
<%
Dim conto
Response.write "La prima parte appare subito"
Response.flush
Do while conto<1000000
conto=conto+1
Loop
Response.write "<br>La seconda parte appare dopo diversi secondi"
Response.flush
%>
</body>
</html>
ASPetto con ansia il vostro contributo :D
cASPita, non faccio in tempo a segnalare un problemino che subito il mio PC si è preso paura ed ha incominciato a fare il bravo... Misteri di Windows :p
Come per magia il simboletto di cui mi lamentavo nel precedente messaggio non c'è più... Boh :confused:
L'importante, alla fine, è che tutto funzioni bene.
Ciao Prof, ciao compagni di classe :D
Infatti anche a me funziona però leggendo il codice scritto da KitscH2000 (" tra l'altro esatto") non capivamo perchè non funzionasse !! :eek:
Anche io utilizzo il PWS è funziona correttamente........
Un salutone
;) :) ;) :)
KitscH2000
12-06-2002, 12:12
Probabile che sia un baco dell'IIS o una funzione non supportata....(Microsoft ci ha abituato a ben altro....no??) :p
cmq se qualcuno ha qualche informazione in più è graditissima
saluti a tutti
vBulletin® v3.7.3, Copyright ©: 2000-2012, Jelsoft Enterprises Ltd.
Traduzione italiana Team: vBulletin-italia.it |