Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 12

Discussione: Timer() (VB.NET)

  1. #1

    Timer() (VB.NET)

    Ciao,

    qualcuno sa se con ASP.NET in VB.NET è possibile utilizzare un evento Timer() più o meno come avviene con i programmi DeskTop?

    Ad esempio far compiere un'operazione ogni 60 secondi.

    (?)


  2. #2
    Se ho capito bene, vorresti che la pagina invocasse un servizio presente sul webserver e che a intervalli predefiniti comunichi alla pagina chiamante il risultato di una operazione. Se e' cosi', puoi ricorrere alla programmazione asincrona che appunto permette di chiamare un servizio ospitato da iis e raccoglierne il risultato a intervalli di tempo (con le tecniche di Pooling o di Waiting) o tramite un delegato (callback).
    Per maggiori informazioni cerca "asynchronous programming" su msdn.microsoft.com
    Saluti a tutti
    Riccardo

  3. #3
    Grazie. Ho trovato un po di documentazione per "asynchronous programming".

    Tu hai sperimentato qualcosa su questo argomento? Perchè nella documentazione che ho trovato su MSDN ci sono dei passaggi che credo potrei evitare.



  4. #4
    Non ho fatto grandi cose ma se incontri problemi o ai domande prova a postare e se posso ti do una mano.
    Saluti a tutti
    Riccardo

  5. #5
    Il problema è che l'argomento è molto vasto e la documentazione che ho trovato su msdn porta esempi molto complessi. Sul resto della rete, cercando con su google, ho trovato ben poco.

    Mi servirebbe un piccolo esempio che mi permetta di capirne il funzionamento. Così poi sarei in grado di capire esempi più complessi.

    Tu potresti farmi un piccolo esempio?

    Grazie

  6. #6
    Non ho un piccolo esempio da farti sottomano, lo dovrei provare a creare da zero e non ho il tempo per farlo. Non ricordando bene il funzionamento dei vari oggetti e dovrei approfondire in particolare
    IasyncResult
    AsyncCallback
    Cmq, credo che potresti iniziare creando un servizio windows che esponga una funzione pubblica (quella che vorresti fosse eseguita ogni 60 secondi come nella tua domanda iniziale) dopo di che seguire l'esempio che trovi qui
    http://msdn.microsoft.com/library/de...ignpattern.asp
    emh.. se l'url e' troppo lungo cmq la pagina porta il nome di "Asynchronous Programming Design Pattern"
    il servizio che crei, non deve avere caratteristiche particolari in quanto, come tutte le classi e i metodi .Net, e' gia' predisposto per essere invocato in maniera asincrona.
    Una volta creato il servizio devi creare un client che lo interroghi in maniera asincrona. E' quindi sul client che dovrai scrivere codice specifico per la chiamata asincrona (es. la tua pagina web). Per poter essere interrogato da una pagina web il servizio windows dovra' essere ospitato in iis.
    Saluti a tutti
    Riccardo

  7. #7
    OK...

    ti ringrazio per i suggerimenti...

    Un' ultima cosa:

    credi che la cosa sarebbe fattibile scrivendo tutto il codice necessario in pagine ASP.NET, quindi senza utilizzare servizi windows (non avendo accesso diretto al server)?

  8. #8
    Domanda per riccardone : perche' questa pippata invece che un banale sleep?

  9. #9
    Domanda per Jc_ :

    perchè non mi fai un esempio di quest' altro sistema (Sleep)?

    Visto che da come hai scritto si intuisce che sia piuttosto facile?

  10. #10
    Originariamente inviato da singsong
    credi che la cosa sarebbe fattibile scrivendo tutto il codice necessario in pagine ASP.NET
    Non credo. Il problema e' legato al protocollo http e ai suoi limiti. Con la programmazione asicrona possiamo aggirare questi limiti ma abbiamo sempre bisogno di una sponda (il servizio) sul server che stia li pronto a risponderci ed elaborare la richiesta.
    Saluti a tutti
    Riccardo

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 © 2025 vBulletin Solutions, Inc. All rights reserved.