Boost logo

Boost :

Subject: [boost] [Boost.process] GSoc proposal
From: Kasra (kasra_n500_at_[hidden])
Date: 2010-04-04 11:27:25


Hi,

I have decided to polish up the current boost.process this summer. It has
been on the list far too many times without much further progress.

After checking out the code I've begun working, so I need to start working
on the new API which I intend to be similar to boost.thread.

Are there any volunteering mentors?

class process
{
        class id;
        class status;
        class priority;
        typedef std::bitset<?> affinity_type;

        static process& this_process();
        
        static std::vector<process> processes();
        static std::vector<process> processes(const std::string& machine);

        static std::vector<process> processes_by_name(const std::string& name);
        static std::vector<process> processes_by_name(const std::string& name, const std::string& machine_name);

        static process start(const std::string& proc);
        static process start(const std::string& proc, const std::string& params);

        const id& get_id() const throw();

        void terminate(bool kill = false );

        status wait();
        status idle_wait();

        const boost::posix_time::ptime& start_time() const;

        affinity_type processor_affinity() const throw();
        void processor_affinity(const affinity_type& affinity);

        const priority& priority() const throw();
        void priority(const priority& new_priority) const throw();

        postream& standard_input() const;
        pistream& standard_output() const;
        pistream& standard_error() const;

        boost::posix_time::time_duration kernel_time() const;
        boost::posix_time::time_duration user_time() const;
        boost::posix_time::time_duration total_time() const;

        const void* max_working_set() const;
        void max_working_set(const void* value);

        const void* min_working_set() const;
        void min_working_set(const void* value);

        uintmax_t peak_paged_memory() const;
        uintmax_t peak_private_memory() const;
        uintmax_t peak_virtual_memory() const;
        uintmax_t peak_working_memory() const;

        uintmax_t paged_system_memory() const;
        uintmax_t paged_memory() const;
        uintmax_t private_memory() const;
        uintmax_t virtual_memory() const;
        uintmax_t working_memory() const;
  
};

With Best Regards

Mr. Kasra Nassiri
Department of Computer Science
Imperial College London

      


Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk