In una libreria in Java 7, ho una classe che fornisce servizi ad altre classi. Dopo aver creato un'istanza di questa classe di servizio, un suo metodo può essere chiamato più volte (chiamiamolo il metodo doWork()
). Quindi non so quando il lavoro della classe di servizio è completato.
Il problema è che la classe di servizio usa oggetti pesanti e dovrebbe rilasciarli. Ho impostato questa parte in un metodo (chiamiamolo release()
), ma non è garantito che altri sviluppatori utilizzeranno questo metodo.
C'è un modo per costringere altri sviluppatori a chiamare questo metodo dopo aver completato l'attività della classe di servizio? Certo che posso documentarlo, ma voglio forzarli.
Nota: non posso chiamare il metodo release()
nel metodo doWork()
, perché doWork()
ha bisogno di quegli oggetti quando viene chiamato in next.