aneira segura no Delphi para um Form distribuir objetos de interface vinculados ao seu tempo de vid

Eu tenho um Delphi Form que fornece a funcionalidade por trás de um objeto de interface que outras partes do código também obtêm referências por meio de uma propriedade pertencente ao Form. Não consigo delegar a funcionalidade da interface a um objeto filho porque muito dessa funcionalidade é atendida por controles / componentes no formulário. Eu não posso usar TAggregatedObject ou TContainedObject para vincular a vida útil dos objetos de interface que estão sendo passados para o Form porque a classe TForm não herda de TinterfacedObject e Delphi não suporta herança múltipla, portanto, não posso misturar TInterfacedObject na cadeia de herança . Essa situação pode levar a violações de acesso se um formulário for destruído enquanto outro código contiver uma das referências de interface distribuídas pelo formulário. Alguém pode pensar em uma boa solução para esse problema?

questionAnswers(2)

yourAnswerToTheQuestion