Multiprocess, multithreaded read write on a single file
Is there anything i can do in these methods to get any boost in performance?


Yes, You can reimplement them, using the 'memory-mapped files' (MMf) to solve both problems of parallel concurrency and access sharing. 

using (MemoryMappedFile file = MemoryMappedFile.CreateFromFile("test.bin"))
using (MemoryMappedViewStream stream = file.CreateViewStream())
{
    Read(stream);
}


There are two ways of accessing data on a memory mapped file – using a MemoryMappedViewStream and an MemoryMappedViewAccessor.
 The former is optimised to provide sequential access (e.g. when reading or writing a block of data) and the later is optimised for random access reading and writing.

Also, for 'production code' consider the following:


Performance can be greatly improved by always writing data sequentially and in large chunks
The chunk size is less important for small amounts of data (less than a kilobyte)
There is a cost to creating and disposing accessors, this cost becomes acceptable for reading files below 32K.
There is benefit of keeping hold of a stream, wich will remain significant. 
When reading a large stream the performance is equivalent to raw memory access