About vtkWindowToImageFilter

I use vtkWindowToImageFilter to extract content of a rendering window by
renderWindows->Render()
vtkSmartPointer imageFilters = vtkSmartPointer::New();
imageFilters->SetInput(renderWindows);
imageFilters->Modified();
imageFilters->SetInputBufferTypeToRGB();
imageFilters->ReadFrontBufferOff();
I usually run this after renderWindows->Render() in a loop, yet I find that even without executing the rendering, the filter still can grab the newly updated content in the loop. Could anyone help me about that? Is that because the filter will force the window to render implicittly?