Supposons que je dispose d'un MemoryStream
et une fonction qui opère sur des octets.
Le code actuel est à peu près le suivant :
void caller()
{
MemoryStream ms = // not important
func(ms.GetBuffer(), 0, (int)ms.Length);
}
void func(byte[] buffer, int offset, int length)
{
// not important
}
Je ne peux pas changer func
mais j'aimerais réduire au minimum la possibilité de modifier les données du flux à partir de l'application func
.
Comment pourrais-je / devrais-je réécrire le code pour m'assurer que les données du flux ne seront pas modifiées ?
Ou ce n'est pas possible ?
EDITAR:
Je suis désolé, je n'ai pas mentionné que j'aimerais ne pas faire de copies des données.