696 using namespace impl;
700 environment_params_t & env_params,
701 mbox_t stats_distribution_mbox )
703 environment_infrastructure_t * obj =
nullptr;
707 const auto tracking = env_params.work_thread_activity_tracking();
708 if( work_thread_activity_tracking_t::on == tracking )
709 obj =
new env_infrastructure_t< reusable::real_activity_tracker_t >(
710 outliving_mutable(io_svc),
712 env_params.so5_giveout_coop_listener(),
713 std::move(stats_distribution_mbox) );
715 obj =
new env_infrastructure_t< reusable::fake_activity_tracker_t >(
716 outliving_mutable(io_svc),
718 env_params.so5_giveout_coop_listener(),
719 std::move(stats_distribution_mbox) );
721 return environment_infrastructure_unique_ptr_t(
723 environment_infrastructure_t::default_deleter() );