Lotus Notes / Domino Sonstiges > Java und .NET mit Notes/Domino
LS2J: Objekte freigeben?
(1/1)
magic_halli:
Hi,
ich habe einen LS-Agent, der mittels LS2J eine Java-Bibliothek anspricht.
Vielleicht eine etwas blöde Frage, aber muss/sollte ich auch hier die Objekte am Ende wieder freigeben?
--- Code: ---Function run()
Dim jSession As JAVASESSION
Dim jError As JAVAERROR
Dim jClass_ApplicationStart As JAVACLASS
Dim jObject_ApplicationStart As JAVAOBJECT
...
' Objekte am Ende freigeben???
' bspw.: Set jSession = Nothing etc.
End Function
--- Ende Code ---
Ich habe das bisher nicht gemacht :-\ , bin aber vorhin über eine Aussage gestolpert, das auch immer diese Objekte freigegeben werden müssen, bspw. um Fehlern wie "lokaler Heap ist voll" o.ä. vorzubeugen!
Mit LotusScript-Objekten mache ich das bisher jedoch auch, bspw.:
--- Code: ---Sub Initialize
...
Set docMail = Nothing
Set docProfil = Nothing
Set dcMail = Nothing
Set db = Nothing
Set session = Nothing
Exit Sub
--- Ende Code ---
Danke und Gruß
Rico.
flaite:
Reine LotusScript Objekte brauchst du gar nicht auf nothing zu setzen. Das macht Notes selbst.
Bei LS2J mach ich es. Man braucht es aber afaik nicht immer. Wenn LS2J aus zeitgesteuerten Agenten aufgerufen wird auf jeden Fall. Ich glaub das es bei aus der GUI-getriggerten Zeugs auch automatisch entsorgt wird. So wirklich sicher bin ich mir da aber nicht. Deshalb setze ich LS2J Objekte immer auf nothing.
Heap Probleme treten nach meinen Beobachtungen oefter auf, wenn viele NotesJava-Objekte in Schleifen initialisiert werden und nicht entsorgt werden.
Navigation
[0] Themen-Index
Zur normalen Ansicht wechseln