Witam, temat powiązany ze "wskaźniki po raz nty"
Myślałem, że coś takiego załatwi sprawę(funkcja GetStream):
private MyStream agentStream = null;
private MyStream mainStream;
public void myFunc(parametry)
{
mainStream.Dispose();
mainStream = null;
mainStream = new MyStream(parametry);
}
public MyStream GetStream()
{
if(agentStream != null)
{
agentStream.Dispose();
agentStream = null;
}
agentStream = new MyStream(mainStream);
return agentStream;
}
Ale okazuje się, że GC w całej swojej łaskawości w pewnym momencie raczy zmienić położenie agentStream w pamięci. Metody te wywołuję w innej klasie w takiej kolejności:
myFunc();
stream = GetStream();
myFunc();
I w pewnym momencie stream traci referencje. Jak zrobić, żeby GC nie tykał w ogóle agentStream?