Hi,
I am doin a multithreading program in c++.

......
class thr
{......
public:
d =new char[35];
......
void start(){...start thread by calling function run..}
void run(){...}
int joining(){..join all threads}
~thr(){delete []d;}
};

In the program I am creating all threads,calling start on all thread objects and then calling joining on all thread objects.

Now I want to know when will this destructor be called for each thread object?Finally altogether or when each thread joins..or....
confused state :-|....help me out,pls.
thanks