private CompletableFuture<Boolean> startRender(OutputStream stream, RESPONSE response,
                                                  Execution execution, Request request) {
        this.response = response;
        this.stream = stream;
        this.execution = execution;
        DataListListener parentOfTopLevelListener = new DataListListener(new ParentOfTopLevel(request, response.data()), null);
        dataListListenerStack.addFirst(parentOfTopLevelListener);
        success = new CompletableFuture<>();
        try {
            getExecutor().execute(parentOfTopLevelListener);
        } catch (RejectedExecutionException e) {
            parentOfTopLevelListener.closeIO(e);
        }
        return success;
    }
Initiate rendering before handover to rendering threads.
This is rendering which happens before the Response is returned from the main chain,
caused by freezing of DataLists.
At this point the worker thread still owns the Response, so all this rendering must happen
on the caller thread invoking freeze (that is, on the thread calling this).
container-core/src/main/java/com/yahoo/processing/rendering/AsynchronousSectionedRenderer.java