I am using timer_create function for timer functionality in my application. When timeout happens, a new thread gets created. That time my application\'s memory usage is gett
I doubt it has anything to do with your timer.
If you create a new thread, the thread needs space for the stack. As far as I know this memory gets allocated once at thread creation because it has to be contiguous.
That may sound like a lot of wasted memory, but it is not. First off, you can lower the stack size if you want, second: Only the address-space inside your process gets allocated. Physical memory only gets allocated if you use the stack.