There are two separate threads in my code that are using there own Executor's SingleThreadExecutor. I wanted that both those services should run parallelly, but what I observed that one service haults then only the second service starts and when the second service haults then only the first one starts. I have not used any locking system.
So, do we achieve Concurrency, with SingleThreadExecutors or Parallelism? Should I consider CompletableFuture.runAsync() in my application, to run the tasks parallelly?