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

    [VB.NET] MultiThreading

    Salve a tutti,
    ho realizzato un nuovo browser internet, molto dettagliato e escludendo tutti i menu di IE e tutto cio che lo riguardava creandolo da 0.

    Ora pero devo migliorare la velocità in quanto ogni qual volta carica una nuova pagina, tutto il resto dell'applizazione va a scatti e si blocca finche la pagina nn si è caricata. Cosi anche quando si salva un immagine chiedendo lo streaming al server e via dicendo.

    Ho bisogno quindi che queste funzioni vengano eseguite in un nuovo Thread, in modo che l'applicazione resti cmq usufruibile.

    Ho provati qualche soluzione ma con esito negativo. Innanzitutto, creando un nuovo thread, nn posso passargli gli eventi, e cmq darebbe errore del tipo "cross thread...." in quanto nn ti fa usare un oggetto che gia è usato da un altro thread.

    Ho letto pero che ha questo ci sono delle soluzioni, utilizzando ad esempio il metodo INVOKE e cosi via, ma a me nn sembra cambi nulla, e molto probabilmente c'è qualcosa che nn torna.

    Quindi per darvi un po l'idea del problema, io devo fare in modo che:

    richiamo una sub:


    sub image(byval url as string)
    ....
    end sub
    ecco, questo è un esempio, vorrei che questa sub fosse eseguita in nuovo thread, passandogli il parametro url, e senza che dia errore quando si trova a manipolari oggetti che stanno manipolando altri thread..come posso fare??

  2. #2
    Moderatore di Programmazione L'avatar di LeleFT
    Registrato dal
    Jun 2003
    Messaggi
    17,320

    Moderazione

    VB.NET viene trattato nell'apposito sub-forum VisualBasic e .NET Framework.

    Ti sposto.


    Ciao.
    "Perchè spendere anche solo 5 dollari per un S.O., quando posso averne uno gratis e spendere quei 5 dollari per 5 bottiglie di birra?" [Jon "maddog" Hall]
    Fatti non foste a viver come bruti, ma per seguir virtute e canoscenza

  3. #3
    qui trovi tutto quello di cui hai bisogno:

    http://www.albahari.com/threading/

    a sinistra c'è "download pdf", scaricatelo....il capitelo piu interessante per il tuo caso è il 3, dove introduce il BackGroundWorker. a me è stato di estremo aiuto
    IP-PBX management: http://www.easypbx.it

    Old account: 2126 messages
    Oldest account: 3559 messages

  4. #4
    Ti ringrazio molto, provero a vedere speriamo bene, quell'oggetto l'avevo provato ma con cattivo esito, sicuramente (spero) sbagliavo qualcosa io, ti faccio sapere!

    Mi avevano gia linkato a una guida su quell'oggetto nel mio portale: www.bytesintheveins.com, se vuoi farci un salto sei il benvenuto!

  5. #5
    Purtroppo è in c#
    mi serve in vb.net

  6. #6
    Originariamente inviato da MyLamer88
    Purtroppo è in c#
    mi serve in vb.net
    oh ma che pigrizia, ho capito che ti sei fatto un web browser tutto tuo e sei stanco, ma un pò di invettiva fa sempre bene

    http://msdn2.microsoft.com/it-it/library/c8dcext2(VS.80).aspx

    tanto alla fine devi solo vedere quali metodi del BackGroundWorker ti servono e gestire un 3/4 eventi con relativi delegati, sia in C# che in VB.net non dovresti avere problemi


    IP-PBX management: http://www.easypbx.it

    Old account: 2126 messages
    Oldest account: 3559 messages

  7. #7
    Grazie, è che sono 3 giorni che sono fermo su questa cosa e ne ho provate gia di tutti i colori

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.