⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 pprocess.h

📁 mgcp协议源代码。支持多种编码:g711
💻 H
字号:
/* * pprocess.h * * Operating System process (running program) class. * * Portable Windows Library * * Copyright (c) 1993-1998 Equivalence Pty. Ltd. * * The contents of this file are subject to the Mozilla Public License * Version 1.0 (the "License"); you may not use this file except in * compliance with the License. You may obtain a copy of the License at * http://www.mozilla.org/MPL/ * * Software distributed under the License is distributed on an "AS IS" * basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See * the License for the specific language governing rights and limitations * under the License. * * The Original Code is Portable Windows Library. * * The Initial Developer of the Original Code is Equivalence Pty. Ltd. * * Portions are Copyright (C) 1993 Free Software Foundation, Inc. * All Rights Reserved. * * Contributor(s): ______________________________________. * * $Log: pprocess.h,v $ * Revision 1.18  1999/03/02 05:41:58  robertj * More BeOS changes * * Revision 1.17  1998/12/15 12:43:43  robertj * Fixed signal handling so can now ^C a pthread version. * * Revision 1.16  1998/11/30 22:06:59  robertj * New directory structure. * * Revision 1.15  1998/10/18 14:29:42  robertj * Renamed argv/argc to eliminate accidental usage. * * Revision 1.14  1998/10/16 11:27:58  robertj * Added access to argc/argv. * * Revision 1.13  1998/09/24 04:11:46  robertj * Added open software license. * * Revision 1.12  1998/05/30 13:30:44  robertj * Fixed shutdown problems with PConfig caching. * * Revision 1.11  1998/03/29 10:42:52  craigs * Made PConfig thread safe * * Revision 1.10  1998/03/26 04:55:53  robertj * Added PMutex and PSyncPoint * * Revision 1.9  1998/01/04 08:13:32  craigs * Removed extern reference to PProcessInstance * * Revision 1.8  1998/01/03 23:06:32  craigs * Added PThread support * * Revision 1.7  1996/10/31 10:28:38  craigs * Removed PXOnSigxxx routines * * Revision 1.6  1996/09/21 05:42:12  craigs * Changes for new common files, PConfig changes and signal handling * * Revision 1.5  1996/08/03 12:08:19  craigs * Changed for new common directories * * Revision 1.4  1996/06/10 11:03:23  craigs * Changed include name * * Revision 1.3  1996/04/15 10:50:48  craigs * Last revision prior to release of MibMaster * * Revision 1.2  1996/01/26 11:06:31  craigs * Added signal handlers * * Revision 1.1  1995/01/23 18:43:27  craigs * Initial revision * * Revision 1.1  1994/04/12  08:31:05  robertj * Initial revision * */#ifndef _PPROCESS#pragma interface#include <ptlib/syncpoint.h>PDICTIONARY(PXFdDict,    POrdinalKey, PThread);///////////////////////////////////////////////////////////////////////////////// PProcess#include "../../pprocess.h"  public:    friend class PApplication;    friend class PServiceProcess;    friend void PXSignalHandler(int);    friend class HouseKeepingThread;    ~PProcess();    PDirectory PXGetHomeDir ();    char ** PXGetArgv() const { return p_argv; }    int     PXGetArgc() const { return p_argc; }    char ** PXGetEnvp() const { return p_envp; }    friend void PXSigHandler(int);    virtual void PXOnSignal(int);    virtual void PXOnAsyncSignal(int);    void         PXCheckSignals();    static void PXShowSystemWarning(PINDEX code);    static void PXShowSystemWarning(PINDEX code, const PString & str);  protected:    void         CommonConstruct();    void         CommonDestruct();    virtual void _PXShowSystemWarning(PINDEX code, const PString & str);    int pxSignals;  protected:    void CreateConfigFilesDictionary();    PAbstractDictionary * configFiles;#ifdef P_PTHREADS  public:    void SignalTimerChange();  protected:    PDICTIONARY(ThreadDict, POrdinalKey, PThread);    ThreadDict activeThreads;    PMutex     threadMutex;    PSyncPoint timerChangeSemaphore;    PThread * housekeepingThread;  friend void * PXHouseKeepingThread(void *);#elif defined(BE_THREADS)  public:    void SignalTimerChange();  private:    PDICTIONARY(ThreadDict, POrdinalKey, PThread);    ThreadDict activeThreads;    PMutex activeThreadMutex;    PLIST(ThreadList, PThread);    ThreadList autoDeleteThreads;    PMutex deleteThreadMutex;    PDECLARE_CLASS(HouseKeepingThread, PThread)        public:        HouseKeepingThread();        void Main();        PSyncPoint breakBlock;    };    friend class HouseKeepingThread;    HouseKeepingThread * houseKeeper;    // Thread for doing timers, thread clean up etc.  friend PThread * PThread::Current();  friend int32 PThread::ThreadFunction(void * thread);#else  public:    void PXAbortIOBlock(int fd);  protected:    PXFdDict     ioBlocks[3];#endif};#endif

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -