A condition that we state for the use of the BatchRequests method is that all requests to be batched have to be issued in their own threads.
This is needed because requests such as SubscribeTable are blocking and release the control only after the Server response.
Spawning 4 temporary threads, each one only devoted to a single SubscribeTable invocation should be enough.
As long as the parameter of BatchRequests is 3, upon the third invocation the cumulative request will be issued; then, the request that has come fourth will be issued separately. If you have any reason to force an order (that is, the request for adapters[4] must be issued last), then some complication is needed.

We apologize for the delayed answer.