separate autorelease pools in constructor and destructor