salve!
scrivo a voi, fidi pinguini, perchè penso che gtk sia abbastanza pingu, nel caso mi spostate (su programmazione? )
brevemente:
ho cominciato a guardare gtk, ho fatto una finestrella e ci ho anche messo dentro i bottoncini, bello bello. ora però mi serviva di usare quella funzionalità che è descritta così:
il punto è che the following function e the following example non mi sono per niente chiari, anche perchè usa come esempio una pipe mentre a me serve di usare i socket e non riesco a convertireMonitoring I/O
A nifty feature of GDK (one of the libraries that underlying GTK--) is the ability to have it check for data on a file descriptor for you. This is especially useful for networking applications. The following function is used to do this:
dettagliatamente: (per chi pensa di potermi dare una mano dopo le lettura del brevemente che sono sicuro farà fuggire parecchi )
devo sviluppare un'applicazioncina client, e se uso i socket come li so io: send+recv succede che la recv mi si blocca finchè non arrivano dati, e questo non è quel che deve succedere. allora gtk giustamente mi fornisce la sua bella utility, mi dovrebbe monitorare il socket e dirmi quando ci sono dati da leggere. fin qui penso abbastanza ovvio.
ora sull'esempio nel tutorial usano pipe invece di socket, pensavo non fosse un grande problema fare la conversione, invece non mi riesce. là usa mkfifo() la quale crea un file di tipo pipe, mentre coi socket non ho una mksock() inoltre i socket vanno connessi a qualche indirizzo. ma il punto peggiore è che dopo apre la pipe confornendo il nome del file creato con mkpipe, e io non ho la più pallida idea di cosa sia questo ifstream. dopodichè lo usa (l'ifstream) per ricevere i dati dalla pipe, senza usare niente che ricordi vagamente la funzione read() che nel mio caso avrei comodamente sostituito con recv().codice:new ifstream
premesso che sono cosciente di essere molto fagiano, c'è tra di voi che siete riusciti a leggere fino qua senza annoiarvi un'anima pia che mi sa indicare la retta via?