Windows Programming Question:
Download Questions PDF

You forget to call CloseHandle - will there be a memory leak?

Answer:

Well, yes and no. It is possible for a process to leak resources (such as kernel objects) while the process runs. However, when the process terminates, the operating system ensures that any and all resources used by the process are freed—this is guaranteed. For kernel objects, the system performs the following actions: When your process terminates, the system automatically scans the process’s handle table. If the table has any valid entries (objects that you didn’t close before terminating), the system closes these object handles for you. If the usage count of any of these objects goes to zero, the kernel destroys the object.

Download Windows Programming Interview Questions And Answers PDF

Previous QuestionNext Question
How the handle helps in manipulating the kernel objects?What is a kernel object?