Dlclose() doesn't release resources acquired

I am writing an application in C++ and dynamically links itself to a dynamic library using dlopen(). When I call dlclose(), the resource acquired by Go runtime aren’t released. I analysed this using htop.
In htop, it shows threads throughout the lifetime of the process even after calling dlclose().
What is the reason for it and how can I make go release these resources?