The batch geocoding service is a backend batch process that has a 24-hour SLA. Requests to this service is lower priority that the main geocoding services and done in a way to minimize impact to the on-demand type services. All batch geocoding jobs should complete in less than 24 hours but note that the processing time is directly impacted by the load on the platform, so running two jobs of the same size at different times may take totally different amounts of time.
The only real option to get around this is to use the on-demand geocoding service and make a request for each location. Note that there are QPS limits on the platform. If you are using a free key, I believe the limit is around 5 queries per second, and for enterprise keys I think the default is around 50 queries per second. Making a request per location can be a lot faster and consistent in terms of processing times, but requires more upfront code development, makes for a lot more network traffic, and is more error prone (mainly because of the network traffic and QPS limits). Generally, this approach is only recommended in critical situations where a large number of locations must be geocoded within a small-time window. Generally, batch geocoding is a much better option.