Using SharedPtr in Timer implementation