Torna indietro   Hardware Upgrade Forum > Software > Programmazione

FUJIFILM X-T30 III, la nuova mirrorless compatta
FUJIFILM X-T30 III, la nuova mirrorless compatta
FUJIFILM X-T30 III è la nuvoa fotocamera mirrorless pensata per chi si avvicina alla fotografia e ricerca una soluzione leggera e compatta, da avere sempre a disposizione ma che non porti a rinunce quanto a controllo dell'immagine.
Oracle AI World 2025: l'IA cambia tutto, a partire dai dati
Oracle AI World 2025: l'IA cambia tutto, a partire dai dati
Da Las Vegas, la visione di Larry Ellison e la concretezza di Clay Magouyrk definiscono la nuova traiettoria di Oracle: portare l’intelligenza artificiale ai dati, non i dati all’intelligenza, costruendo un’infrastruttura cloud e applicativa in cui gli agenti IA diventano parte integrante dei processi aziendali, fino al cuore delle imprese europee
Micron e millisecondi: la piattaforma ServiceNow guida l'infrastruttura IT di Aston Martin F1
Micron e millisecondi: la piattaforma ServiceNow guida l'infrastruttura IT di Aston Martin F1
Dalla precisione estrema dei componenti alla gestione digitale dei processi: come la piattaforma ServiceNow consente ad Aston Martin Aramco Formula One Team di ottimizzare risorse IT e flussi operativi in un ambiente dove ogni millesimo di secondo conta
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 10-11-2006, 19:16   #21
Gino+89+
Member
 
L'Avatar di Gino+89+
 
Iscritto dal: Nov 2005
Città: Mantova
Messaggi: 115
Quote:
Ma con quale linguaggio le devi scrivere ? Molti linguaggi hanno già la possibilità di aprire i file in modalità esclusiva, basterebbe questo se non hai bisogno di centinaia di utenti contemporaneamente.
Programmo in C...

Quote:
Te ne butto li un'altra(mi piace fantasticare ).

Hai un file chat.dat il quale viene mostrato a tutti i clien collegati(la chat per intenderci ma viene scritta solo da un processo, non so magari da chi ha aperto la chat...).
Quando un utente deve scrivere qualcosa, CREA un file dove scrive la data ed il messaggio.
Così per ogni utente...

Il processo che va a scrivere sul file chat.dat non fa altro che controllare ogni TOT tempo(non so ogni 500 ms, oppure ongi secondo) quanti file_utente ci sono, aprirli tutti e scrivere sul file chat.dat i messaggi prendendoli in ordine di chi ha la data + vecchia. E poi cancella i file_utente.
Ah ok ci avevo pensato pure io ad una cosa del genere poi però molto lavoro va a carico del primo uetente collegatosi (ogni volta il lavoro di aggiornamento)...

Penso che farò un file di lock (semaforo) come proposto da vizzz, visto che molte volte la soluzione più semplice è la più efficace...per quanto riguarda la coda, la cosa risulta alquanto complessa, visto che avendo anche solo un file coda ci potrebbe IMHO essere il caso in cui due utenti scrivino in coda contemporaneamente...il problema potrebbe essere risolto con più file diversi di tipo coda (n file coda)...visto che non ho voglia di stare dietro ad una roba del genere non ne tengo conto della coda ...poi tanto al max ci saranno 20/30 utenti collegati (ma prorpio al massimo) e buonanotte...
Gino+89+ è offline   Rispondi citando il messaggio o parte di esso
Old 10-11-2006, 19:22   #22
cionci
Senior Member
 
L'Avatar di cionci
 
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
Quote:
Originariamente inviato da Gino+89+
Programmo in C...
Puoi usare solo C standard ?
cionci è offline   Rispondi citando il messaggio o parte di esso
Old 10-11-2006, 19:33   #23
Gino+89+
Member
 
L'Avatar di Gino+89+
 
Iscritto dal: Nov 2005
Città: Mantova
Messaggi: 115
Quote:
Originariamente inviato da cionci
Puoi usare solo C standard ?
Preferibilmente sì..perchè?
Gino+89+ è offline   Rispondi citando il messaggio o parte di esso
Old 10-11-2006, 19:36   #24
cionci
Senior Member
 
L'Avatar di cionci
 
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
Perchè nel C standard non ci sono semafori, mutue esclusioni e apertura di un file in modalità esclusiva...
L'unica soluzione è il file di lock...

PS: file di lock e semafori sono due cose diverse...
cionci è offline   Rispondi citando il messaggio o parte di esso
Old 10-11-2006, 19:41   #25
Gino+89+
Member
 
L'Avatar di Gino+89+
 
Iscritto dal: Nov 2005
Città: Mantova
Messaggi: 115
Quote:
Originariamente inviato da cionci
Perchè nel C standard non ci sono semafori, mutue esclusioni e apertura di un file in modalità esclusiva...
L'unica soluzione è il file di lock...

PS: file di lock e semafori sono due cose diverse...
Si vede che farò un file di questo tipo ogni volta che leggo, quando finisco lo cancello e così via per ogni utente. Per quanto riguarda l'applicazione in sè, si deve automaticamente aggiornare da sola dal file principale ogni TOT che decido io?

Atra domanda: posso solo leggere un file mentre un'altro scrive giusto?
Gino+89+ è offline   Rispondi citando il messaggio o parte di esso
Old 10-11-2006, 19:48   #26
cionci
Senior Member
 
L'Avatar di cionci
 
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
Quote:
Originariamente inviato da Gino+89+
Atra domanda: posso solo leggere un file mentre un'altro scrive giusto?
Io eviterei...non vorrei che tu arrivassi a leggere a metà scrittura (improbabile, ma chi lo sa)...
cionci è offline   Rispondi citando il messaggio o parte di esso
Old 10-11-2006, 19:53   #27
Gino+89+
Member
 
L'Avatar di Gino+89+
 
Iscritto dal: Nov 2005
Città: Mantova
Messaggi: 115
Quote:
Originariamente inviato da cionci
Io eviterei...non vorrei che tu arrivassi a leggere a metà scrittura (improbabile, ma chi lo sa)...
Bene...anzi male...meglio se aggiorno automaticamente tutti ad ogni fine scrittura?...creando un file tipo il precedente ma con l'effetto contrario?
Gino+89+ è offline   Rispondi citando il messaggio o parte di esso
Old 10-11-2006, 19:55   #28
cionci
Senior Member
 
L'Avatar di cionci
 
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
La chat funziona in rete nel senso che usi i socket ?
cionci è offline   Rispondi citando il messaggio o parte di esso
Old 10-11-2006, 19:58   #29
Gino+89+
Member
 
L'Avatar di Gino+89+
 
Iscritto dal: Nov 2005
Città: Mantova
Messaggi: 115
Quote:
Originariamente inviato da cionci
La chat funziona in rete nel senso che usi i socket ?
No le cose sono MOOLTO più semplici...in rete LAN nella cartella di lavoro condivisa installo il programma

(diciamo che è il primo programma decente (GUI) che mi sono posto di fare)
Gino+89+ è offline   Rispondi citando il messaggio o parte di esso
Old 10-11-2006, 20:16   #30
cionci
Senior Member
 
L'Avatar di cionci
 
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
Quindi i file ti servono per scambiare i dati da una postazione all'altra... Diciamo che è il tuo "mezzo" di comunicazione...

Ogni volta che un client invia un messaggio scrivi il messaggio nel file relativo al client di destinazione, senza passare dal file comune che avevi pensato prima...quando il client (periodicamente) controlla se ci sono messaggi per lui, leggi il file ed eliminalo...

Tutte queste operazioni devono essere protette dal file di lock (anche la lettura fino dopo l'eliminazione).

Hai bisogno anche di un altro file: quello relativo alla lista di nickname presenti...lo puoi fare statico o dinamico:

- statico: ci metti la lista di nickname abilitati e non lo tocchi più
- dinamico: la lista dei nickname può variare quando un client decide di creare un nuovo account

Nel secondo caso sia la lettura che l'aggiornamento devono essere protetti da file di lock, nel primo caso tutti leggono, quindi non hai bisogno del file di lock.
cionci è offline   Rispondi citando il messaggio o parte di esso
Old 10-11-2006, 20:33   #31
Dr.Speed
Senior Member
 
L'Avatar di Dr.Speed
 
Iscritto dal: Jun 2004
Città: Monselice (PD)
Messaggi: 4641
Quote:
Originariamente inviato da cionci
Quindi i file ti servono per scambiare i dati da una postazione all'altra... Diciamo che è il tuo "mezzo" di comunicazione...

Ogni volta che un client invia un messaggio scrivi il messaggio nel file relativo al client di destinazione, senza passare dal file comune che avevi pensato prima...quando il client (periodicamente) controlla se ci sono messaggi per lui, leggi il file ed eliminalo...

Tutte queste operazioni devono essere protette dal file di lock (anche la lettura fino dopo l'eliminazione).

Hai bisogno anche di un altro file: quello relativo alla lista di nickname presenti...lo puoi fare statico o dinamico:

- statico: ci metti la lista di nickname abilitati e non lo tocchi più
- dinamico: la lista dei nickname può variare quando un client decide di creare un nuovo account

Nel secondo caso sia la lettura che l'aggiornamento devono essere protetti da file di lock, nel primo caso tutti leggono, quindi non hai bisogno del file di lock.
pero' pensavo fosse piu semplice realizzarla
__________________
2500KCorsair H70Asrock EXTREME4 GEN38GB Corsair DDR3 1600MHz CL8Gainward GTX570 GLHSSD Samsung 830 64GBCorsair CX600Centaurion2G500206BW
\_\_\_\_\_DrSpeed_/_/_/_/_/
Dr.Speed è offline   Rispondi citando il messaggio o parte di esso
Old 10-11-2006, 20:38   #32
Gino+89+
Member
 
L'Avatar di Gino+89+
 
Iscritto dal: Nov 2005
Città: Mantova
Messaggi: 115
Quote:
Originariamente inviato da cionci
Quindi i file ti servono per scambiare i dati da una postazione all'altra... Diciamo che è il tuo "mezzo" di comunicazione...

Ogni volta che un client invia un messaggio scrivi il messaggio nel file relativo al client di destinazione, senza passare dal file comune che avevi pensato prima...quando il client (periodicamente) controlla se ci sono messaggi per lui, leggi il file ed eliminalo...

Tutte queste operazioni devono essere protette dal file di lock (anche la lettura fino dopo l'eliminazione).

Hai bisogno anche di un altro file: quello relativo alla lista di nickname presenti...lo puoi fare statico o dinamico:

- statico: ci metti la lista di nickname abilitati e non lo tocchi più
- dinamico: la lista dei nickname può variare quando un client decide di creare un nuovo account

Nel secondo caso sia la lettura che l'aggiornamento devono essere protetti da file di lock, nel primo caso tutti leggono, quindi non hai bisogno del file di lock.
Ok....

Per quanto riguarda il processo di aggiornamento lo inserisco nel ciclo dei messaggi dell'applicazione winApi giusto??

Ultima modifica di Gino+89+ : 10-11-2006 alle 20:50.
Gino+89+ è offline   Rispondi citando il messaggio o parte di esso
Old 10-11-2006, 20:41   #33
mamo139
Senior Member
 
L'Avatar di mamo139
 
Iscritto dal: Sep 2006
Città: Bologna/Milano
Messaggi: 525
ma di che linguaggio stiamo parlando???

Ultima modifica di mamo139 : 10-11-2006 alle 20:44.
mamo139 è offline   Rispondi citando il messaggio o parte di esso
Old 10-11-2006, 20:43   #34
Gino+89+
Member
 
L'Avatar di Gino+89+
 
Iscritto dal: Nov 2005
Città: Mantova
Messaggi: 115
Quote:
Originariamente inviato da mamo139
ma di che linguaggio stiamo parlando???
Sempre del linguaggio C...ma l'algoritmo dovrebbe funzionare ovunque
Gino+89+ è offline   Rispondi citando il messaggio o parte di esso
Old 10-11-2006, 20:44   #35
mamo139
Senior Member
 
L'Avatar di mamo139
 
Iscritto dal: Sep 2006
Città: Bologna/Milano
Messaggi: 525
per non comprare il my_sql nel mio forum in php che ora è a circa 1000 utenti iscritti ogni profilo utente è un file a parte, così nn c'è rischio di perdere dati

cmq parlando di c il modo migliore è sicuramente un applicazione tipo server-client
mamo139 è offline   Rispondi citando il messaggio o parte di esso
Old 11-11-2006, 10:11   #36
MEMon
Senior Member
 
Iscritto dal: Dec 2002
Messaggi: 3359
Anche se usi un file di lock il problema sussiste ugualmente, tanto vale che non lo usi e te ne freghi allora.
MEMon è offline   Rispondi citando il messaggio o parte di esso
Old 11-11-2006, 10:12   #37
MEMon
Senior Member
 
Iscritto dal: Dec 2002
Messaggi: 3359
Quote:
Originariamente inviato da Gino+89+
Programmo in C...



Ah ok ci avevo pensato pure io ad una cosa del genere poi però molto lavoro va a carico del primo uetente collegatosi (ogni volta il lavoro di aggiornamento)...

Penso che farò un file di lock (semaforo) come proposto da vizzz, visto che molte volte la soluzione più semplice è la più efficace...per quanto riguarda la coda, la cosa risulta alquanto complessa, visto che avendo anche solo un file coda ci potrebbe IMHO essere il caso in cui due utenti scrivino in coda contemporaneamente...il problema potrebbe essere risolto con più file diversi di tipo coda (n file coda)...visto che non ho voglia di stare dietro ad una roba del genere non ne tengo conto della coda ...poi tanto al max ci saranno 20/30 utenti collegati (ma prorpio al massimo) e buonanotte...
Ma che carico vuoi che sia??? su che computer devi fare girare sta cosa, sui dei 486?
MEMon è offline   Rispondi citando il messaggio o parte di esso
Old 11-11-2006, 12:53   #38
cionci
Senior Member
 
L'Avatar di cionci
 
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
Quote:
Originariamente inviato da Gino+89+
Per quanto riguarda il processo di aggiornamento lo inserisco nel ciclo dei messaggi dell'applicazione winApi giusto??
Ma non dovevi usare il C standard ?
cionci è offline   Rispondi citando il messaggio o parte di esso
Old 11-11-2006, 15:52   #39
Gino+89+
Member
 
L'Avatar di Gino+89+
 
Iscritto dal: Nov 2005
Città: Mantova
Messaggi: 115
Quote:
Originariamente inviato da cionci
Ma non dovevi usare il C standard ?
Ops scusa uso la stdio.h e la windows.h più altre librerie come string.h etc...

Quote:
Ma che carico vuoi che sia??? su che computer devi fare girare sta cosa, sui dei 486?
Bhe in effetti
Gino+89+ è offline   Rispondi citando il messaggio o parte di esso
Old 11-11-2006, 22:15   #40
AngeL)
Senior Member
 
L'Avatar di AngeL)
 
Iscritto dal: May 2006
Città: Salerno
Messaggi: 936
Quote:
Originariamente inviato da Gino+89+
Bhe in effetti
computer aziendali rulez
AngeL) è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


FUJIFILM X-T30 III, la nuova mirrorless compatta FUJIFILM X-T30 III, la nuova mirrorless compatta
Oracle AI World 2025: l'IA cambia tutto, a partire dai dati Oracle AI World 2025: l'IA cambia tutto, a parti...
Micron e millisecondi: la piattaforma ServiceNow guida l'infrastruttura IT di Aston Martin F1 Micron e millisecondi: la piattaforma ServiceNow...
ASUS GeForce RTX 5080 Noctua OC Edition: una custom fenomenale, ma anche enorme ASUS GeForce RTX 5080 Noctua OC Edition: una cus...
Dreame Aqua10 Ultra Roller, la pulizia di casa con un rullo Dreame Aqua10 Ultra Roller, la pulizia di casa c...
iPhone 18: Apple punta alla connessione ...
Tesla sotto indagine per la modalit&agra...
EOLO attiva la rete FWA 5G fino a 1 Gbps...
Nasce GOG Patrons: donazioni volontarie ...
Scope elettriche ai minimi: con doppio ...
Galaxy S25 Edge 5G a 639€ su Amazon: tit...
MacBook Pro M5: il teardown rivela picco...
Samsung Odyssey G30D oggi costa 87,5€, v...
4 smartphone 8/256GB a basso prezzo: rea...
Von der Leyen spiega RESourceEU: l'Europ...
YouTube, smantellata la "Ghost Netw...
Ferrari F76: la prima hypercar NFT segna...
Am9080, sono passati 50 anni dal primo p...
Inquinamento record a Nuova Delhi: il go...
Il Giappone e il 'fetish' per i dischi o...
Chromium
GPU-Z
OCCT
LibreOffice Portable
Opera One Portable
Opera One 106
CCleaner Portable
CCleaner Standard
Cpu-Z
Driver NVIDIA GeForce 546.65 WHQL
SmartFTP
Trillian
Google Chrome Portable
Google Chrome 120
VirtualBox
Tutti gli articoli Tutte le news Tutti i download

Strumenti

Regole
Non Puoi aprire nuove discussioni
Non Puoi rispondere ai messaggi
Non Puoi allegare file
Non Puoi modificare i tuoi messaggi

Il codice vB è On
Le Faccine sono On
Il codice [IMG] è On
Il codice HTML è Off
Vai al Forum


Tutti gli orari sono GMT +1. Ora sono le: 11:18.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Served by www3v