process.h File Reference

#include "lang.h"
#include "threads.h"

Include dependency graph for process.h:

This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Structures

struct  typrocessrecord
struct  typrocesslist

Defines

#define processinclude

Typedefs

typedef tythreadglobals ** hdlprocessthread
typedef typrocessrecordptrprocessrecord
typedef typrocessrecord ** hdlprocessrecord
typedef typrocesslistptrprocesslist
typedef typrocesslist ** hdlprocesslist

Functions

boolean setagentsenable (boolean)
boolean agentsenabled (void)
boolean agentsdisable (boolean)
boolean disposeprocesslist (hdlprocesslist)
boolean newprocesslist (hdlprocesslist *)
void setcurrentprocesslist (hdlprocesslist)
boolean pushprocess (hdlprocessrecord)
boolean popprocess (void)
void disposeprocess (hdlprocessrecord hprocess)
boolean newprocess (hdltreenode, boolean, langerrorcallback, long, hdlprocessrecord *)
boolean addprocess (hdlprocessrecord)
boolean addnewprocess (hdltreenode, boolean, langerrorcallback, long)
boolean processbackgroundtasks (void)
boolean processisoneshot (boolean)
boolean processagentsleep (long)
boolean processfindcode (hdltreenode, hdlprocessrecord *)
void processcodedisposed (long)
boolean processreplacecode (hdltreenode, hdltreenode)
boolean processdisposecode (hdltreenode)
boolean debuggingcurrentprocess (void)
boolean processstartprofiling (boolean)
boolean processstopprofiling (void)
boolean profilingcurrentprocess (void)
boolean processruncode (hdlprocessrecord, tyvaluerecord *)
boolean processruntext (Handle htext)
boolean processrunstring (bigstring)
boolean processrunstringnoerrorclear (bigstring)
boolean processkill (hdlprocessrecord)
boolean abort1shotprocess (void)
void killdependentprocesses (long)
boolean newprocessthread (tythreadmaincallback, tythreadmainparams, hdlprocessthread *)
boolean processpsuedothread (tythreadmaincallback, tythreadmainparams)
short processthreadcount (void)
boolean initprocessthread (bigstring)
void exitprocessthread (void)
hdlprocessthread getcurrentthread (void)
void endprocessthread (hdlprocessthread)
boolean infrontierthread (void)
boolean goodthread (hdlprocessthread)
boolean ingoodthread (void)
long getthreadid (hdlprocessthread)
hdlprocessthread getprocessthread (long)
hdlprocessthread nthprocessthread (long)
boolean wakeprocessthread (hdlprocessthread)
boolean killprocessthread (hdlprocessthread)
boolean processsleep (hdlprocessthread, unsigned long)
boolean processissleeping (hdlprocessthread hthread)
boolean processwake (hdlprocessthread)
boolean processyield (void)
boolean processyieldtoagents (void)
boolean processbusy (void)
boolean processnotbusy (void)
boolean processrunning (void)
boolean setprocesstimeslice (unsigned long)
boolean getprocesstimeslice (unsigned long *)
boolean setdefaulttimeslice (unsigned long)
boolean getdefaulttimeslice (unsigned long *)
boolean processtimesliceelapsed (void)
unsigned long processstackspace (void)
boolean scheduleprocess (hdlprocessrecord hprocess, hdlprocessthread *pnewthread)
void processscheduler (void)
void processchecktimeouts (void)
boolean processsymbolunlinking (hdlhashtable, hdlhashnode)
void processclose (void)
boolean processwaitforquiet (long timeoutticks)
boolean initprocess (void)
boolean processgetstats (hdlhashtable)

Variables

hdlprocessrecord currentprocess
hdlprocessrecord newlyaddedprocess
unsigned short fldisableyield
boolean flcanusethreads


Define Documentation

#define processinclude
 

Definition at line 29 of file process.h.


Typedef Documentation

typedef struct typrocesslist ** hdlprocesslist
 

typedef struct typrocessrecord ** hdlprocessrecord
 

typedef struct tythreadglobals** hdlprocessthread
 

Definition at line 44 of file process.h.

typedef struct typrocesslist * ptrprocesslist
 

typedef struct typrocessrecord * ptrprocessrecord
 


Function Documentation

boolean abort1shotprocess void   ) 
 

Definition at line 2084 of file process.c.

References findlatest1shotvisit(), hlatest1shot, killprocessthread(), nil, and visitprocessthreads().

Referenced by processkeyboardhook().

Here is the call graph for this function:

boolean addnewprocess hdltreenode  ,
boolean  ,
langerrorcallback  ,
long 
 

Definition at line 2846 of file process.c.

References addprocess(), hcode, hnewnode, and newprocess().

Referenced by newprocessvisit(), processruntext(), scriptcompiler(), and threadcallscriptverb().

Here is the call graph for this function:

boolean addprocess hdlprocessrecord   ) 
 

Definition at line 2863 of file process.c.

References _entercriticalprocesssection, _leavecriticalprocesssection, typrocessrecord::hnextprocess, typrocessrecord::hprocesslist, newlyaddedprocess, nil, processlist, and shellforcebackgroundtask().

Referenced by addnewprocess(), fwsruncallback(), langipcrunitem(), meuserselected(), newprocessvisit(), and scriptnewprocess().

Here is the call graph for this function:

boolean agentsdisable boolean   ) 
 

boolean agentsenabled void   ) 
 

boolean debuggingcurrentprocess void   ) 
 

Definition at line 860 of file process.c.

References currentprocess, and nil.

Referenced by langdialogitemhit(), langrunmodeless(), opafterstrucchange(), opmoveto(), osadebugger(), processdebugger(), processpoptable(), processpushtable(), scriptpopsourcecode(), scriptpushsourcecode(), tableverbgettargetdata(), and xmlcompile().

void disposeprocess hdlprocessrecord  hprocess  ) 
 

Definition at line 268 of file process.c.

References assert, disposehandle(), disposevaluerecord(), langdisposetree(), nil, and setexternalvalue().

Referenced by cmdiconhit(), cmdthreadmain(), deleteprocess(), disposeprocesslist(), langipcruncode(), langwinipcruncode(), newprocess(), osahandlerunscript(), and runprocessvisit().

Here is the call graph for this function:

boolean disposeprocesslist hdlprocesslist   ) 
 

Definition at line 455 of file process.c.

References typrocesslist::ctrunning, disposehandle(), disposeprocess(), typrocessrecord::fldisposewhenidle, typrocessrecord::hnextprocess, and nil.

Referenced by agentscheduler(), disposecancoonrecord(), and oneshotthreadmain().

Here is the call graph for this function:

void endprocessthread hdlprocessthread   ) 
 

Referenced by cmdiconhit().

void exitprocessthread void   ) 
 

Definition at line 2238 of file process.c.

References bigstring, currentprocess, findthreadvisit(), flexitingthread, hashinversesearch(), hashtabledelete(), nil, threadshutdown(), and threadtable.

Referenced by agentthreadmain(), cmdthreadmain(), eventthreadmain(), and oneshotthreadmain().

Here is the call graph for this function:

hdlprocessthread getcurrentthread void   ) 
 

Definition at line 2296 of file process.c.

References getcurrentthreadglobals().

Referenced by getpagetableaddressverb(), getprocesstimeslice(), inetdaddtoerrorlog(), ingoodthread(), landsystem7send(), logtofile(), processtimesliceelapsed(), setprocesstimeslice(), threadfunctionvalue(), webserverserver(), and xmlcompile().

Here is the call graph for this function:

boolean getdefaulttimeslice unsigned long  ) 
 

Definition at line 1800 of file process.c.

References processonehottimeslice.

Referenced by threadfunctionvalue().

hdlprocessthread getprocessthread long   ) 
 

Definition at line 2426 of file process.c.

References tythreadglobals::hnextglobals, and nil.

Referenced by getthreadvalue(), processsymbolunlinking(), and threadfunctionvalue().

boolean getprocesstimeslice unsigned long  ) 
 

Definition at line 1767 of file process.c.

References getcurrentthread(), nil, processagenttimeslice, processisoneshot(), and processonehottimeslice.

Referenced by threadfunctionvalue().

Here is the call graph for this function:

long getthreadid hdlprocessthread   ) 
 

Definition at line 2417 of file process.c.

References idnullthread, and nil.

Referenced by getpagetableaddressverb(), inetdaddtoerrorlog(), threadcallscriptverb(), and threadfunctionvalue().

boolean goodthread hdlprocessthread   ) 
 

Definition at line 1025 of file process.c.

References flthreadkilled, getthreadglobals, and nil.

Referenced by ingoodthread(), and processsleep().

boolean infrontierthread void   ) 
 

Definition at line 1075 of file process.c.

References hthreadglobals, and tythreadglobals::idthread.

Referenced by processstackspace(), and processyield().

boolean ingoodthread void   ) 
 

Definition at line 1040 of file process.c.

References getcurrentthread(), and goodthread().

Referenced by agentthreadmain(), htmlrunmacro(), inetdsupervisor(), processyield(), webservercallfilters(), webservercallresponder(), and webserverlocateresponder().

Here is the call graph for this function:

boolean initprocess void   ) 
 

Definition at line 3457 of file process.c.

Referenced by shellinit().

boolean initprocessthread bigstring   ) 
 

Definition at line 2156 of file process.c.

References assert, bigstring, clearbytes(), copystring(), globalsstack, hashinsert(), hashsymbolexists(), nil, pophashtable(), pushchar(), pushhashtable(), pushlong(), setlongvalue(), setprocesslangcallbacks(), setstringlength, shellwindow, stringlength, threadstartup(), and threadtable.

Referenced by agentthreadmain(), cmdthreadmain(), eventthreadmain(), and oneshotthreadmain().

Here is the call graph for this function:

void killdependentprocesses long   ) 
 

Definition at line 1869 of file process.c.

References flagentsdisabled, maimprocessvisit(), processyield(), and visitprocessthreads().

Referenced by ccdisposerecord().

Here is the call graph for this function:

boolean killprocessthread hdlprocessthread   ) 
 

Definition at line 2494 of file process.c.

References tythreadglobals::flthreadkilled, flthreadkilled, hthreadglobals, nil, processkill(), and wakeprocessthread().

Referenced by abort1shotprocess(), processscheduler(), processsymbolunlinking(), and threadfunctionvalue().

Here is the call graph for this function:

boolean newprocess hdltreenode  ,
boolean  ,
langerrorcallback  ,
long  ,
hdlprocessrecord
 

Definition at line 315 of file process.c.

References anomynousthreadstring, bigstring, copystring(), disposehandle(), disposeprocess(), flcreatedagentprocess, hcode, isemptystring, langerrordialog(), langgetstringlist(), langpusherrorcallback(), newclearhandle(), nil, popprocess(), pushprocess(), setemptystring, and truenoop().

Referenced by addnewprocess(), cmdiconhit(), langipcruncode(), langwinipcruncode(), meuserselected(), newprocessvisit(), osahandlerunscript(), runprocessvisit(), and scriptnewprocess().

Here is the call graph for this function:

boolean newprocesslist hdlprocesslist  ) 
 

Definition at line 439 of file process.c.

References newclearhandle().

Referenced by newcancoonrecord().

Here is the call graph for this function:

boolean newprocessthread tythreadmaincallback  ,
tythreadmainparams  ,
hdlprocessthread
 

Definition at line 2343 of file process.c.

References ctprocessthreads, disposethreadglobals(), flcanusethreads, newthread(), newthreadglobals(), and shellforcebackgroundtask().

Referenced by cmdiconhit(), landsystem7handleevent(), processscheduler(), and scheduleprocess().

Here is the call graph for this function:

hdlprocessthread nthprocessthread long   ) 
 

Definition at line 2440 of file process.c.

References tythreadglobals::hnextglobals, idapplicationthread, and nil.

Referenced by threadfunctionvalue().

boolean popprocess void   ) 
 

Definition at line 244 of file process.c.

Referenced by ccsavespecialfile(), langrunhandle(), newprocess(), and processruncode().

boolean processagentsleep long   ) 
 

Definition at line 777 of file process.c.

Referenced by langfunctionvalue().

boolean processbackgroundtasks void   ) 
 

boolean processbusy void   ) 
 

Definition at line 2714 of file process.c.

Referenced by processruncode(), and shelladjustcursor().

void processchecktimeouts void   ) 
 

Definition at line 3377 of file process.c.

Referenced by langdialogclose(), and shellhandlenullevent().

void processclose void   ) 
 

Definition at line 3452 of file process.c.

Referenced by shellshutdown().

void processcodedisposed long   ) 
 

Definition at line 644 of file process.c.

References codedisposedvisit(), and visitprocessthreads().

Referenced by opverbdisposecode(), and scriptcompiler().

Here is the call graph for this function:

boolean processdisposecode hdltreenode   ) 
 

Definition at line 717 of file process.c.

Referenced by opverbdisposecode(), osaCancelSharedScript(), and scriptremoveagent().

boolean processfindcode hdltreenode  ,
hdlprocessrecord
 

Definition at line 490 of file process.c.

References hcode, typrocessrecord::hnextprocess, hsearch, nil, and processlist.

Referenced by ccagentselectvisit().

boolean processgetstats hdlhashtable   ) 
 

Definition at line 2040 of file process.c.

References getstatsvisit(), and visitprocessthreads().

Referenced by threadstatsverb().

Here is the call graph for this function:

boolean processisoneshot boolean   ) 
 

Definition at line 823 of file process.c.

References currentprocess, and nil.

Referenced by ccmsgverb(), getprocesstimeslice(), langfunctionvalue(), processbackgroundtask(), processscriptkilled(), processyieldtoagents(), and scriptgettargetdata().

boolean processissleeping hdlprocessthread  hthread  ) 
 

Definition at line 1146 of file process.c.

References agentthread, agentthreadsleeping, and nil.

Referenced by processsleep(), processwake(), and threadfunctionvalue().

boolean processkill hdlprocessrecord   ) 
 

Definition at line 566 of file process.c.

References deleteprocess(), typrocessrecord::fldisposewhenidle, nil, and wakeprocessthread().

Referenced by killprocessthread(), langipcrunitem(), processdisposecode(), and scriptkillbutton().

Here is the call graph for this function:

boolean processnotbusy void   ) 
 

Definition at line 2726 of file process.c.

References honeshotcode, nil, and shellforcemenuadjust().

Referenced by langipcmenuprocessstarted(), langipcprocessstarted(), langrunmodeless(), langwinipcprocessstarted(), osaprocessstarted(), processruncode(), scriptdebuggereventloop(), and threadverbprocessstarted().

Here is the call graph for this function:

boolean processpsuedothread tythreadmaincallback  ,
tythreadmainparams 
 

Definition at line 2302 of file process.c.

References copythreadglobals(), disposethreadglobals(), hthreadglobals, idapplicationthread, tythreadglobals::idthread, newthreadglobals(), and swapinthreadglobals().

Referenced by landsystem7handleevent(), and scheduleprocess().

Here is the call graph for this function:

boolean processreplacecode hdltreenode  ,
hdltreenode 
 

Definition at line 664 of file process.c.

References tylangcallbacks::codereplacedcallback, typrocessrecord::hnextprocess, typrocessrecord::holdcode, hsearch, langcallbacks, langdisposetree(), nil, and processlist.

Referenced by scriptcompiler().

Here is the call graph for this function:

boolean processruncode hdlprocessrecord  ,
tyvaluerecord
 

Definition at line 2577 of file process.c.

References fifcloseallfiles(), fl, typrocessrecord::floneshot, hcode, honeshotcode, langdisposetree(), langreleasesemaphores(), langruncode(), nil, popprocess(), processbusy(), processnotbusy(), and pushprocess().

Referenced by cmdiconhit(), cmdthreadmain(), langipcruncode(), langwinipcruncode(), osahandlerunscript(), processtimeslice(), and runprocessvisit().

Here is the call graph for this function:

boolean processrunning void   ) 
 

Definition at line 2749 of file process.c.

boolean processrunstring bigstring   ) 
 

Definition at line 2675 of file process.c.

References newtexthandle(), nil, processlist, and processruntext().

Referenced by ccloadspecialfile(), ccrunurlscript(), processrunstringnoerrorclear(), and runurlscript().

Here is the call graph for this function:

boolean processrunstringnoerrorclear bigstring   ) 
 

Definition at line 2695 of file process.c.

References fl, flinhibiterrorclear, and processrunstring().

Referenced by fwsrunstring(), scriptrunresumescripts(), and scriptrunsuspendscripts().

Here is the call graph for this function:

boolean processruntext Handle  htext  ) 
 

Definition at line 2649 of file process.c.

References addnewprocess(), flinhibiterrorclear, hcode, langbuildtree(), langdisposetree(), langerrorclear(), and nil.

Referenced by langfunctionvalue(), processrunstring(), and threadfunctionvalue().

Here is the call graph for this function:

void processscheduler void   ) 
 

Definition at line 3222 of file process.c.

References agentprocesslist, agentthread, agentthreadmain(), agentthreadsleeping, currentprocess, flagentsdisabled, flagentsenabled, flcanusethreads, flcreatedagentprocess, flpostedmemorymessage, haveheapspace(), idagentsenabledscript, killprocessthread(), langgetuserflag(), macmemoryconfig, tymemoryconfig::minstacksize, newprocessthread(), nil, oneshotscheduler(), postmemorymessage(), postthreadsmessage(), processlist, processwake(), processyield(), shellforcebackgroundtask(), shellfrontrootwindowmessage(), specialoneshotscriptsrunning(), and zerostring.

Referenced by ccbackground().

Here is the call graph for this function:

boolean processsleep hdlprocessthread  ,
unsigned  long
 

Definition at line 1086 of file process.c.

References agentthread, agentthreadsleeping, fl, goodthread(), hthreadglobals, nil, processissleeping(), processlist, and threadsleep().

Referenced by extThreadSleep(), landsystem7send(), langrunmodeless(), scriptdebuggereventloop(), threadfunctionvalue(), webserverserver(), and xmlcompile().

Here is the call graph for this function:

unsigned long processstackspace void   ) 
 

Definition at line 2769 of file process.c.

Referenced by langcheckstackspace().

boolean processstartprofiling boolean   ) 
 

Definition at line 874 of file process.c.

References currentprocess, typrocessrecord::flprofiling, gettablevariable(), idtableprocessor, langexternalnewvalue(), langstartprofiling(), and nil.

Referenced by opstartprofileverb().

Here is the call graph for this function:

boolean processstopprofiling void   ) 
 

Definition at line 909 of file process.c.

References currentprocess, typrocessrecord::flprofiling, and langstopprofiling().

Referenced by opstopprofileverb().

Here is the call graph for this function:

boolean processsymbolunlinking hdlhashtable  ,
hdlhashnode 
 

Definition at line 3432 of file process.c.

References flexitingthread, getprocessthread(), killprocessthread(), and threadtable.

Referenced by ccstart().

Here is the call graph for this function:

short processthreadcount void   ) 
 

Definition at line 2407 of file process.c.

References ctprocessthreads.

Referenced by ccupdatestatistics(), frontierfunctionvalue(), scriptbackgroundtask(), threadfunctionvalue(), and webservermaintainstats().

boolean processtimesliceelapsed void   ) 
 

Definition at line 1818 of file process.c.

References assert, getcurrentthread(), and nil.

Referenced by scriptbackgroundtask().

Here is the call graph for this function:

boolean processwaitforquiet long  timeoutticks  ) 
 

boolean processwake hdlprocessthread   ) 
 

Definition at line 1165 of file process.c.

References agentthread, fl, nil, processissleeping(), processlist, THREADS_ASSERT_1, and threadwake().

Referenced by landsystem7checktimeouts(), landsystem7replyroutine(), processscheduler(), sleepingthreadvisit(), and wakeprocessthread().

Here is the call graph for this function:

boolean processyield void   ) 
 

Definition at line 1235 of file process.c.

Referenced by filemenufunctionvalue(), handleyield(), killdependentprocesses(), landsystem7idleroutine(), langdialogclose(), langrunmodeless(), processscheduler(), processyieldtoagents(), scriptbackgroundtask(), shellbackgroundtask(), shellyield(), and xcmdcallback().

boolean processyieldtoagents void   ) 
 

Definition at line 1318 of file process.c.

References agentthread, fl, flagentsdisabled, fldisableyield, nil, processisoneshot(), processyield(), and wakeprocessthread().

Referenced by ccdisposerecord(), opcompileverb(), and opuncompileverb().

Here is the call graph for this function:

boolean profilingcurrentprocess void   ) 
 

Definition at line 929 of file process.c.

References currentprocess, and nil.

boolean pushprocess hdlprocessrecord   ) 
 

Definition at line 238 of file megastubs2.c.

Referenced by ccsavespecialfile(), langrunhandle(), newprocess(), and processruncode().

boolean scheduleprocess hdlprocessrecord  hprocess,
hdlprocessthread pnewthread
 

Definition at line 2999 of file process.c.

References deleteprocess(), flcanusethreads, newprocessthread(), nil, oneshotthreadmain(), postthreadsmessage(), and processpsuedothread().

Referenced by oneshotscheduler(), threadcallscriptverb(), and threadfunctionvalue().

Here is the call graph for this function:

boolean setagentsenable boolean   ) 
 

Definition at line 176 of file process.c.

References flagentsenabled, idagentsenabledscript, and langsetuserflag().

Referenced by frontierfunctionvalue().

Here is the call graph for this function:

void setcurrentprocesslist hdlprocesslist   ) 
 

Definition at line 445 of file process.c.

References _entercriticalprocesssection, _leavecriticalprocesssection, and processlist.

Referenced by ccinstalltablestructure(), clearcancoonglobals(), and setcancoonglobals().

boolean setdefaulttimeslice unsigned  long  ) 
 

Definition at line 1808 of file process.c.

References max, processagenttimeslice, and processonehottimeslice.

Referenced by threadfunctionvalue().

boolean setprocesstimeslice unsigned  long  ) 
 

Definition at line 1787 of file process.c.

References getcurrentthread(), and nil.

Referenced by agentthreadmain(), and threadfunctionvalue().

Here is the call graph for this function:

boolean wakeprocessthread hdlprocessthread   ) 
 

Definition at line 2468 of file process.c.

References fl, landvisitsleepingthreads(), processwake(), shellcallwakeuphooks(), shellforcebackgroundtask(), and wakeupvisit().

Referenced by killprocessthread(), maimprocessvisit(), processchecktimeouts(), processkill(), processyieldtoagents(), and threadfunctionvalue().

Here is the call graph for this function:


Variable Documentation

hdlprocessrecord currentprocess
 

Definition at line 73 of file process.c.

Referenced by ccmsg(), cmdgettargetdata(), copythreadglobals(), debuggingcurrentprocess(), exitprocessthread(), filefunctionvalue(), isFrontProcess(), kernelfunctionvalue(), langdialoggettargetdata(), langdialognewwindow(), langipcerrorroutine(), langipcgeteventattr(), langpoperrorcallback(), langpusherrorcallback(), langstartprofiling(), langstopprofiling(), langtracktimeslice(), langwinipcerrorroutine(), opafterstrucchange(), openfileverb(), opstopprofileverb(), popprocess(), processagentsleep(), processisoneshot(), processscheduler(), processscriptkilled(), processstartprofiling(), processstopprofiling(), profilingcurrentprocess(), pushprocess(), readwholefileverb(), scriptgettargetdata(), swapinthreadglobals(), and threaddisposecontext().

boolean flcanusethreads
 

Definition at line 81 of file process.c.

Referenced by ccmenuroutine(), initmainprocessthread(), langdialogclose(), langrunmodeless(), newprocessthread(), processscheduler(), processstackspace(), processyield(), scheduleprocess(), and scriptdebuggereventloop().

unsigned short fldisableyield
 

Definition at line 77 of file process.c.

Referenced by CheckFormulas(), copythreadglobals(), landsystem7handleevent(), landsystem7send(), langdialogitemhit(), langipcgetmenuarray(), langipchandlefastscript(), langrunstringnoerror(), notifyuser(), osahandlerunscript(), osaRunSharedMenuItem(), processscriptkilled(), processyield(), processyieldtoagents(), shellactivate(), and swapinthreadglobals().

hdlprocessrecord newlyaddedprocess
 

Definition at line 75 of file process.c.

Referenced by addprocess(), langipcrunitem(), threadcallscriptverb(), and threadfunctionvalue().


Generated on Sat Jun 10 01:58:42 2006 for frontierkernel 10.1.10a by  doxygen 1.4.6