2009-10-19 2 views

Répondre

1

Je suppose que vous parlez d'une structure de code quelque chose comme ceci:

procedure A_Procedure_Body is 

    task T1 is 
     entry T1_E1; 
    end T1; 

    task T2 is 
     entry T2_E1; 
    end T2; 

    Some_Variable : Integer; 

    task body T1 is 
     T1_Local : Integer; 
    begin 
     T1_Local := Some_Variable; 
     ... 
    end T1; 

    task body T2 is 
     T2_Local : Integer := 42; 
    begin 
     Some_Variable := T2_Local; 
     ... 
    end T2; 

begin 
    null; 
end A_Procedure_Body; 

Dans ce cas, « une_variable » est mondiale à la fois des tâches, mais pas partagé au sens Ada d'être correctement protégé pour un accès cohérent et simultané.

Même si la variable globale est réellement référencée par une seule des tâches et qu'il n'y a donc aucun risque d'apparition de problèmes d'accès simultané lors de l'accès, la variable ne partage toujours pas la variable.

Questions connexes