Domanda

Ho un processo di gestione eventi che invia eventi agli abbonati (ad es. http_session_created, http_sesssion_destroyed). Se al posto del processo denominato viene utilizzato Pid, ??è necessario inserirlo nelle funzioni per operare con il gestore eventi, ma se viene utilizzato il processo Nome, il codice sarà più chiaro.

Quale variante è giusta?

Grazie!

È stato utile?

Soluzione

Sebbene non vi sia alcuna differenza effettiva nel processo, nominare un processo, registrarlo, lo rende globale. In sostanza stai dicendo al sistema che qui è un servizio globale che chiunque può usare.

Dalla tua descrizione sembra più che tu stia dando loro dei nomi per salvare il piccolo sforzo di portarli in giro nel tuo loop. In questo caso, metterei i loro pid in un record con tutti gli altri dati di stato che porti in giro. Questo indica molto meglio il tipo di processi.

Altri suggerimenti

Se hai un set fisso di " abbonato " elabora, quindi utilizza i nomi registrati IMO.

Se, al contrario, hai un tipo di architettura di pubblicazione / sottoscrizione in cui gli abbonati vanno e vengono, allora hai bisogno di un'infrastruttura per tracciarli e da questo punto non importa se usi Pid () o nomi .

Uno degli svantaggi dell'utilizzo dei nomi registrati è che è necessario seguirli nella propria base di codice per evitare "collisioni". Quindi dipende da te: personalmente, tendo a favorire i processi denominati poiché, come dici tu, rende più chiara la lettura del codice. In un modo o nell'altro, all'OTP non importa.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top