Depois de alterar uma propriedade em um objeto LayoutParams, preciso chamar setLayoutParams novamente?

Eu tenho uma Visualização (contendo um anúncio) que preciso ser dimensionada para se ajustar à largura da tela em um determinado momento (após o carregamento do anúncio). Então eu tenho um métodosetHeight(myView) que calcula a altura correta para a largura da tela especificada e altera os LayoutParams da exibição de acordo. A parte crucial do código é esta:

LayoutParams params = myView.getLayoutParams();
int width = myView.getWidth();
if (params != null && width > 0) {
    params.height = (int) Math.round(ratio * width);
}

Isso parece funcionar na maior parte do tempo, mas às vezes a exibição não é dimensionada. Parece funcionar consistentemente apenas se eu adicionar a seguinte linha na parte inferior:

myView.setLayoutParams(params);

Isso parece fazer sentido também, já que o Android Views chamarequestLayout() na suasetLayoutParams() método. Por outro lado, não vejo como uma mudança em um campo público (params.height) acionaria uma alteração no layout.

Por outro lado, encontro repetidamente tutoriais na rede em que os parâmetros são simplesmente alterados e depois não os definimos novamente.

Portanto, minha pergunta é: É correto que, para atualizar imediatamente o layout após alterar uma propriedade do LayoutParams, eu precise chamarsetLayoutParams novamente? E que simplesmente alterar a propriedade só levará a uma alteração de layout em algum momento posterior, quando a alteração de layout for acionada de outro lugar?