Loading...
Searching...
No Matches
LibThread::ProcJob Class Reference

## Public Member Functions

| ProcJob (const char *procname_init)
virtual void | execute ()
Public Member Functions inherited from LibThread::Job
| Job ()
| ~Job ()
void | addDep (Job *job)
void | addDep (vector< Job * > &jobs)
void | addDep (long ndeps, Job **jobs)
void | addNotify (vector< Job * > &jobs)
void | addNotify (Job *job)
virtual bool | ready ()
void | run ()
Public Member Functions inherited from LibThread::SharedObject
| SharedObject ()
virtual | ~SharedObject ()
void | set_type (int type_init)
int | get_type ()
void | set_name (std::string &name_init)
void | set_name (const char *s)
std::string & | get_name ()
void | incref (int by=1)
long | decref ()
long | getref ()
virtual BOOLEAN | op2 (int op, leftv res, leftv a1, leftv a2)
virtual BOOLEAN | op3 (int op, leftv res, leftv a1, leftv a2, leftv a3)

## Private Attributes

string | procname

## Additional Inherited Members

Data Fields inherited from LibThread::Job
ThreadPool * | pool
long | prio
size_t | id
long | pending_index
vector< Job * > | deps
vector< Job * > | notify
vector< Trigger * > | triggers
vector< string > | args
string | result
void * | data
bool | fast
bool | done
bool | queued
bool | running
bool | cancelled

## Detailed Description

Definition at line 2376 of file shared.cc.

## Constructor & Destructor Documentation

## ProcJob()

LibThread::ProcJob::ProcJob | ( | const char * | procname_init | ) |

inline

Definition at line 2379 of file shared.cc.

: Job(),
procname(procname_init) {
set_name(procname_init);
}
LibThread::Job::Job
Job()
Definition shared.cc:1561
LibThread::ProcJob::procname
string procname
Definition shared.cc:2377
LibThread::SharedObject::set_name
void set_name(std::string &name_init)
Definition shared.cc:160

## Member Function Documentation

## execute()

virtual void LibThread::ProcJob::execute | ( |  | ) |

inline virtual

Implements LibThread::Job.

Definition at line 2383 of file shared.cc.

{
vector<leftv> argv;
for (unsigned i = 0; i <args.size(); i++) {
appendArg(argv, args[i]);
}
for (unsigned i = 0; i < deps.size(); i++) {
appendArg(argv, deps[i]->result);
}
sleftv val;
int error = executeProc(val, procname.c_str(), argv);
if (!error) {
result = (LinTree::to_string(&val));
val.CleanUp();
}
}
i
int i
Definition cfEzgcd.cc:132
LibThread::Job::args
vector< string > args
Definition shared.cc:1553
LibThread::Job::deps
vector< Job * > deps
Definition shared.cc:1550
LibThread::Job::result
string result
Definition shared.cc:1554
sleftv::CleanUp
void CleanUp(ring r=currRing)
Definition subexpr.cc:351
error
#define error(a)
Definition mpr_numeric.cc:966
LibThread::appendArg
static void appendArg(vector< leftv > &argv, string &s)
Definition shared.cc:723
LibThread::executeProc
static BOOLEAN executeProc(sleftv &result, const char *procname, const vector< leftv > &argv)
Definition shared.cc:744
LinTree::to_string
std::string to_string(leftv val)
Definition lintree.cc:843

## Field Documentation

## procname

string LibThread::ProcJob::procname

private

Definition at line 2377 of file shared.cc.

The documentation for this class was generated from the following file:

- Singular/dyn_modules/systhreads/shared.cc