I haven't personally involved in developing PWA but heard lot about Service worker
The only way that i can relate this underlying mechanism is the Thread pool in java is my understanding correct? please elaborate.
Well, Yes and No. With thread pools, you allocate threads your apps can use for, well anything. There are issues related to UI updates and other things threads have to worry about, but they're a way for apps to share the load as it were.
With Service Workers, your app can only have one - well, different parts of a web app can have their own (Chapter 3), but each page or set of pages can only have one. Service workers don't run all the time, so you can't rely upon them running when you want them to. Service workers expose a limited number of events it can respond to - the service worker sits dormant until one of these events fires, then goes back to sleep when it's done processing the event. Because of this, the scope of what you can do with service workers is limited.