## NAME

ACE_MT_CORBA_Handler - Handle multi-threaded Orbix requests in conjunction with the `ACE_Reactor`.

## SYNOPSIS

    #include <ace/CORBA_Handler.h>

    class ACE_MT_CORBA_Handler :
      public ACE_CORBA_Handler,
      public ACE_CORBA_1 (ThreadFilter)
    {
      public:
        static ACE_CORBA_Handler *instance (void);
        virtual int handle_input (ACE_HANDLE);
        void thr_mgr (ACE_Thread_Manager *tm);
        ACE_Thread_Manager *thr_mgr (void) const;
        virtual int suspend (void);
        virtual int resume (void);
        void dump (void) const;
        ACE_ALLOC_HOOK_DECLARE;
      protected:
        static void *process_events (void *);
        ACE_MT_CORBA_Handler (void);
        virtual ~ACE_MT_CORBA_Handler (void);
        virtual int inRequestPreMarshal (
            ACE_CORBA_1 (Request) &r,
            ACE_CORBA_1 (Environment) &IT_env = ACE_CORBA_1 (default_environment)
            );
        static ACE_MT_CORBA_Handler *instance_;
        ACE_Thread_Manager *thr_mgr_;
        ACE_Pipe pipe_;
    };

## DESCRIPTION

If you are using MT-Orbix (which has been the default Orbix for years) you should use this class rather than `ACE_ST_CORBA_Handler`. See

www.cs.wustl.edu/~schmidt/COOTS-96.ps.gz

for an explanation of what this class does for Orbix.

## Singleton access point.

    static ACE_CORBA_Handler *instance (void);

Returns a Singleton.

## Demuxing hook.

    virtual int handle_input (ACE_HANDLE);

Process the next Orbix event.

## Threading hook.

    void thr_mgr (ACE_Thread_Manager *tm);

Set the Thread_Manager used by ACE_MT_CORBA_Handler

    ACE_Thread_Manager *thr_mgr (void) const;

Get the Thread_Manager used by ACE_MT_CORBA_Handler

## Dynamic linking hooks.

    virtual int suspend (void);

Atomically suspend all the threads associated with the `thr_mgr ()`.

    virtual int resume (void);

Atomically resume all the threads associated with the `thr_mgr ()`.

    void dump (void) const;

Dump the state of an object.

    ACE_ALLOC_HOOK_DECLARE;

Declare the dynamic allocation hooks.

## AUTHOR

Douglas C. Schmidt (schmidt@cs.wustl.edu) and Irfan Pyarali (irfan@wuerl.wustl.edu).

## LIBRARY

ace