>> Tecnologia elettronica >  >> Ottica >> Cannocchiali terrestri

Come viene identificata una procedura come vicina o lontana?

Una procedura viene identificata come vicina o lontana in base alla posizione della funzione che viene chiamata. Se la funzione è definita nello stesso pacchetto Go del codice che la chiama, la funzione viene considerata vicina. Se la funzione è definita in un pacchetto Go diverso, allora la funzione è considerata far.

La differenza tra le funzioni vicine e lontane è significativa solo quando si utilizza l'istruzione defer per gestire gli errori di panico o chiudere le risorse alla fine di una funzione. Quando viene rilevata un'istruzione di differimento, il runtime Go inserirà una variabile in uno stack che memorizza la funzione responsabile della gestione del differimento. Se la funzione differita è vicina, la variabile memorizzerà un puntatore alla funzione nello stesso pacchetto Go. Se la funzione differita è far, la variabile memorizzerà un puntatore a una funzione stub che chiamerà la funzione far tramite una chiamata tra pacchetti.

Le chiamate tra pacchetti sono più costose delle chiamate intra-pacchetto, quindi è generalmente preferibile utilizzare le funzioni Near quando possibile. Questo può essere fatto organizzando il codice in pacchetti in modo tale che le funzioni che devi utilizzare insieme siano definite nello stesso pacchetto.

  1. Chi produce gli orologi Philip Persio?
  2. Qual è l'impatto negativo delle scansioni dell'iride?
  3. Specifiche per una Nikon NT - 4D
  4. Cos'è un pinguino?
  5. Cos'è un'apertura?
  6. Come fare un Minimag torcia luminoso