KnowledgeHub
Questions
Tags
Users
Search
Alex Rivera
|
Logout
Edit Question
Title
Body
I've used C# to solve the following requirement.. - create an app the can receive a lot of data fast - you must be able to analyse the received data while more are incoming. - use as little CPU and disk as possible My idea for an algorithm was.. SIZE = 10MB Create a mmf with the size of SIZE On data recived: if data can't fit mmf: increase mmf.size by SIZE write the data to mmf -> The size on the disc are increased in chuncks of 10MB when the previous "room/space" are used. How is the "increase mmf.size by SIZE" done in C#? I have found a lot of simple examples on creating mmfs and views but the only place ( link ) I have seen code that acutally increases the mmfs area uses code that can't compile. Any help will be greatly appriciated. EDIT This causes an exception : private void IncreaseFileSize() { int theNewMax = this.currentMax + INCREMENT_SIZE; this.currentMax = theNewMax; this.mmf.Dispose(); this.mmf = MemoryMappedFile.CreateFromFile(this.FileName, FileMode.Create, "MyMMF", theNewMax); this.view = mmf.CreateViewAccessor(0, theNewMax); } This exception is thrown : The process cannot access the file 'C:\Users\moberg\Documents\data.bin' because it is being used by another process.
Tags (comma-separated)
Save Edits
Cancel