Titolo: Evitare la duplicazione dei processi
Categoria: Codice |
|
Ultimo Aggiornamento: 11/11/04 |
Se abbiamo l'accortezza (o usiamo il sistema) di dare ad ogni processo un nome che lo identifichi univocamente, siamo già pronti a controllare che uno stesso processo sia lanciato più volte (e dunque duplicato).
Basta usare infatti il parametro "*" del comando New process: se esiste già un processo con lo stesso nome di quello che stiamo creando, New process restituirà l'id del processo esistente, invece di crearne uno nuovo. Ecco dunque un'idea di metodo di apertura dei processi, che prende come parametri nome del metodo, dimensione dello stack e nome del processo:
C_TEXT($1;$3;$NomeDelMetodo_t;$NomeDelProcesso_t)
C_LONGINT($2;$StackSize_l;$procid_l)
$NomeDelMetodo_t:=$1
$StackSize_l:=$2
$NomeDelProcesso_t:=$3
$procid:=
New process($NomeDelMetodo_t;$StackSize_l;$NomeDelProcesso_t;*)
BRING TO FRONT($procid_l)
Inviato da: PierPaolo Sichera |
|
Visite: 11790 |
Se accedi con utente e password, puoi aggiungere dei commenti.