access violation in simultaneous request of the same resource using service.

You are returning way too many objects, and XData is taking time to destroy them. One solution is to avoid asking XData to destroy them, adding this line to your server method:

  TXDataOperationContext.Current.Handler.ActionResultDestruction := TActionResultDestruction.RootOnly;

This should solve the issue. But it's always recommended to not return that many objects from the server in one single request.