Visualizzazione dei risultati da 1 a 3 su 3

Discussione: Classi ed esecuzione

  1. #1
    Utente di HTML.it L'avatar di Ranma2
    Registrato dal
    Mar 2003
    Messaggi
    2,648

    Classi ed esecuzione

    Più che un problema è una curiosità

    esempio banale:

    ho tre differenti classi, ognuna delle quali contiene uno sleep con tempistica diversa, dopo lo sleep viene stampato a video una stringa identificativa per la classe

    è possibile eseguire le tre classi allo stesso momento?

    o verranno eseguite una al termine dell'altra?

  2. #2
    normalmente se tu hai tre classi chiamate ad esempi classeA, classeB e classe C queste "prendono vita" per così dire) quando ne dichiari uan istanza con new, ad esempio

    clsA = new classeA();
    clsB = new classeB();
    clsC = new classeC();

    eseguire le 3 classi assieme vorrebbe dire che ognuna venga eseguita in un processo diverso separato l'uno dall'altro mentre ora verrebebro esguite l'una di seguito all'altra con tre scritte successive.
    Se però dichiari classeB e classeC come figlie di classe A qualcosa cambia..

    Codice PHP:
    <?php
    class classeA {
      protected 
    $nome;

     
      function 
    __construct() {
        
    sleep(5);
        echo 
    "sono ".$this->nome." e ho dormito per 5 secondi in A...";
      }
    }

    class 
    classeB extends classeA {
     
      function 
    __construct() {
          
    $this->nome "B";
          
    parent::__construct();
        }
    }

    class 
    classeC extends classeA {

      function 
    __construct() {
          
    $this->nome "C";
          
    parent::__construct();
        }
    }

    $clsA = new classeA();
    $clsB = new classeB();
    $clsC = new classeC();
    ?>
    classeB e classeC ereditano da classeA ed eseguono la construct di classeA e come vedi dall'esempio "sembra" che venganoi eseguite tutte e tre assieme

  3. #3
    Il PHP non supporta i thread. All'interno della stessa richiesta HTTP, l'esecuzione è sequenziale.

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.