Ci sono buone ragioni per impostare 1 (o 0) come il più alto livello di priorità e usare numeri più alti per priorità più basse.
Innanzitutto, la priorità può rappresentare l'ordine in cui devono essere eseguite le attività. Il numero 1 è la prima attività che svolgi, quindi ha priorità più alta rispetto al secondo insieme di attività che eseguirai.
Un altro è che il numero di livelli di priorità può essere soggetto a modifiche. In questo caso, come puoi determinare automaticamente cosa devi fare prima? Se lasci che 1 rappresenti la priorità più alta, il tuo codice non dipende dal numero di livelli di priorità.
Effettuando una ricerca sul web sulla stringa "numerazione a livello di priorità", molti esempi mostrano dove più basso è il numero di priorità, più importante è il compito. Alcuni esempi usano 0 come il più alto, altri usano 1.
Questa è una convenzione di vecchia data. La maggior parte dei registri di livello di priorità del processore funzionano allo stesso modo.
So che questo non sembra intuitivo, quindi dovresti rendere la tua convenzione sugli ordini molto chiara quando lavori con i livelli di priorità numerati.