10 Novembre 2022 alle 19:57
#24437
Partecipante
Questa un’altra versione:
using System;
using System.IO;
using System.IO.MemoryMappedFiles;
using System.Threading;
class Program
{
// Process B:
static void Main(string[] args)
{
try
{
using (MemoryMappedFile mmf = MemoryMappedFile.OpenExisting("Theremino1"))
{
var mmf_persistent = MemoryMappedFile.CreateFromFile(@"Theremino1_persist", FileMode.Open, "Thermino1_persist");
byte[] buffer = new byte[4000];
int bytesRead;
using (MemoryMappedViewStream stream_persist = mmf.CreateViewStream())
{
BinaryWriter writer = new BinaryWriter(stream_persist);
using (MemoryMappedViewStream stream = mmf_persistent.CreateViewStream())
{
BinaryReader reader = new BinaryReader(stream);
while (true)
{
bytesRead = reader.Read(buffer, 0, buffer.Length);
writer.Write(buffer, 0, bytesRead);
}
}
}
}
}
catch (FileNotFoundException)
{
Console.WriteLine("Memory-mapped file does not exist. Run HAL first.");
}
}
}
Ma Matlab vede sempre e solo il contenuto del file di zeri che ho scritto sul file system….