Visualizzazione dei risultati da 1 a 3 su 3
  1. #1

    [vb2008] timeout su dataset

    utilizzando Data.DataSet leggo a intervalli regolari un file "dati.xml" caricato su Web, con l' usuale codice:

    Dim Sp As New Data.DataSet
    Sp.ReadXml("http://www.indirizzo_sito/dati.xml")

    tutto perfetto, veloce e regolare... tranne quando ci sono dei problemi nel sito

    ovviamente il codice è inserito in un ciclo Try - Catch ex as Exception

    a seconda dello stato del sito, alcune volte il programma si blocca anche per 20 secondi , ed alla fine viene generata una eccezione di Timeout

    è un tempo troppo lungo: potessi generare l' eccezione dopo un paio di secondi, rimanderei il codice a dei dati di default, inseriti nel programma.

    da qui la domanda: come impostare il tempo di timeout utilizzando ReadXml ???

    e in second' ordine: se ReadXml proprio non disponesse di un timeout (peccato, perché è un modo facile e veloce per leggere dati), c' è un modo alternativo per leggere un file .xml sul web impostando un tempo di timeout?

  2. #2
    Utente di HTML.it
    Registrato dal
    Apr 2009
    Messaggi
    970
    Un modo sporco per farlo consiste nel chiamare la lettura in un thread separato e applicare un Join con Timeout

    codice:
     Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
            Dim task As New System.Threading.Thread(AddressOf ReadXML)
            task.IsBackground = True
            task.Start()
            task.Join(2000)
            task.Abort()
            task = Nothing
        End Sub
    
        Sub ReadXML()
            'Lettura
        End Sub
    Sbagliare è umano, perseverare è diabolico.

  3. #3
    grazie... proverò

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.