1
가이 코드 작성 :.NET 원격 개체의 수명
public class Message : MarshalByRefObject, IMessage
{
...
public override object InitializeLifetimeService()
{
ILease leas = (ILease) base.InitializeLifetimeService();
if (leas != null)
{
if(leas.CurrentState == LeaseState.Initial)
{
leas.InitialLeaseTime = TimeSpan.FromMilliseconds(2000);
leas.SponsorshipTimeout = TimeSpan.Zero;
leas.RenewOnCallTime = TimeSpan.Zero;
}
}
return leas;
}
}
합니까 이초 후 오브젝트가 "쓰레기 수집"없다는 것을 InitializeLifetimeService의 피부의 재정? 이 인스턴스가 원격으로 액세스되었는지 여부에 관계없이 독립적으로 말합니다.
감사합니다.
2 초 후에 물체가 GC되지 않을 것인지 묻는가? 그 코드는 그 후에 수집되기를 원하는 것처럼 보입니다. (비록 당신이 10 초 폴링을 바꾸지는 않았지만 이벤트) – Menahem
예, 2 초 후에 오브젝트를 수집하고 싶습니다. 필자는 피어 2 피어 시뮬레이터를 구현 중이며 피어간에 순환되는 메시지가 있습니다. 개체를 수집 한 후 시간 초과를 할당하려고했습니다. 이것이 최선의 방법인지 나는 모른다. 그러나 이것을 해결할 또 다른 방법은 없다. – aumanets
2 초 후에 물체를 수집하고 싶습니다. 전화를 걸면 수명 시간을 갱신하고 싶지 않습니다. 그 코드가 그 행동을 보장합니까? – aumanets