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

    [C] scrittura/lettura su file contemporanea

    Ciao a tutti, sto facendo un piccolo programma in c che utilizza i processi (sotto win, quindi uso le api). Ma ho un problema, questi processi devono lavorare (scrivere e leggere) su uno stesso file o anche su più file ma contemporaneamente, ovvero ci potrebbero essere ad esempio 3 processi che devono scrivere e leggere in uno stesso file. Come posso fare x gestire le precedenze ?? esistono delle funzioni già costruite che permettono di sapere se un file è già aperto ??


    grazie


    Ciao ciao

  2. #2
    Se durante l'apertura dici a Windows di bloccare il file (lasciando dwShareMode a 0 nella chiamata a CreateFile) gli altri processi tentando di aprirlo riceveranno un errore.
    Amaro C++, il gusto pieno dell'undefined behavior.

  3. #3
    Ok, grazie... provo a farlo..x quanto riguarda windows.

    Poi un'altra cosa, se volessi in futuro "portare" questo prog anche x linux....naturalmente non potrei utilizzare lo stesso metodo....come potrei fare ?? c'è qualche altra possibilità ?



    grazie 1000

  4. #4
    Ciao, mi appello nuovamente alla vostra saggezza
    Il problema è che ora devo portare il prog anche per linux, come ho scritto sopra...ma non posso usare le API....c'è qualche altra alternativa all'apertura contemporanea dei file e del loro controllo ???


    grazie

  5. #5
    Io gestirei il tutto con thread concorrenti pilotati da mutex esclusioni: con una ricerca su google ti ritovi molto materiali (cerca pthread e pthread_mutex)

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.