I looked at the sources and found that one of the arguments to the FileStream Read method has the [In, Out] modifier.
[System.Security.SecuritySafeCritical] // auto-generated public override int Read([In, Out] byte[] array, int offset, int count) { } What does this modifier mean?
If you believe MSDN, it is used to interact with COM, but there seems to be no COM interaction in this method.
byte[]- reference type, with it you can transfer data and so. The point is that COM needs to be prompted if it is allowed to read ([In]) or write ([Out]) for this data. - VladDoutandrefparameters, which can confuse you if you tried to read about them somewhere - Qutrix