Visualizzazione dei risultati da 1 a 6 su 6

Discussione: Peer To Peer

  1. #1

    Peer To Peer

    A scopo scolastico, sto provando ad implementare un peer to peer.
    Il server multithread riceve e memorizza (in un database) indirizzo IP e nome dei file che il client connesso condivide.
    Un altro client recupera tramite il server l'ip del client che condivide il file da scaricare.
    A questo punto devo creare la connessione diretta tra i 2 client!
    Il problema è che non riesco a mantenere i client sempre in ascolto ( ho fatto un while(true) )e allo stesso tempo ad eseguire le funzioni del client come la connessione al server, la selezione della cartella da condividere, ricerca di file, iniziare un trasferimento, ecc..
    Cioè finchè non arriva una connessione in ingresso non esce dal while e non va avanti il programma (client).

    Spero che mi capiate perchè è un po difficile da spiegare... Grazie

  2. #2
    Moderatore di Programmazione L'avatar di LeleFT
    Registrato dal
    Jun 2003
    Messaggi
    17,304
    Immagino che il problema sia dovuto al fatto che devi trasferire l'ascolto all'interno di un thread. Se è così, allora il thread ha vita "propria" e non dovrebbe bloccarti l'intero client.


    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
    E quello che non riesco a fare, io lancio il Client, questo mi chiama un oggetto client_master che contine tutte le funzioni del client
    allo stesso tempo però vorrei che mi lanciasse su un altro thread un altro oggetto indipendente che ascolta

    ho provato, ma finchè non "TERMINO" il primo oggetto non mi lancia il secondo (quello che ascolta) proprio perchè non riesco a metterlo su un altro thread

    Ad esempio sul server sono riuscito a fare multi thread: quando arriva una chiamata crea un nuovo oggetto server_thread per ogni chiamante e ci possono essere infiniti chiamanti

    Nel clien non riesco a lanciare in parallelo sia ascolto che esecuzine di tutta la roba che deve fare il mio client

    in pratica dovrei sdoppiare il client in 2 programmi uno che ascolta sempre su una porta ( es "5555") l'altro che fa tante altre cose come ricercare file, ecc...

    Grazie 1000

  4. #4

    Peer To Peer

    UP

  5. #5

  6. #6
    Utente di HTML.it L'avatar di MMarzia
    Registrato dal
    Mar 2001
    Messaggi
    1,781
    linguaggio?
    va specificato sempre, anche nel titolo, come da regolamento
    io sono festosamente cicciottello :: e. cartman

    t'amo senza sapere come, nè quando nè da dove,
    t'amo direttamente senza problemi nè orgoglio:
    così ti amo perchè non so amare altrimenti

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.