2020
2121
2222 < link rel ="icon " href ="../../../../_img/logo.png ">
23- < meta name ="generator " content ="mkdocs-1.6.1, mkdocs-material-9.5.43 ">
23+ < meta name ="generator " content ="mkdocs-1.6.1, mkdocs-material-9.5.45 ">
2424
2525
2626
@@ -2826,15 +2826,16 @@ <h5 id="frequenz.sdk.actor--the-run-function">The <code>run()</code> Function<a
28262826logged.</ p >
28272827< details class ="example " open ="open ">
28282828< summary > Example</ summary >
2829- < div class ="language-python highlight "> < pre > < span > </ span > < code > < span id ="__span-0-1 "> < a id ="__codelineno-0-1 " name ="__codelineno-0-1 " href ="#__codelineno-0-1 "> </ a > < span class ="kn "> from</ span > < span class ="nn "> frequenz.sdk.actor</ span > < span class ="kn "> import</ span > < span class ="n "> Actor</ span > < span class ="p "> ,</ span > < span class ="n "> run</ span >
2830- </ span > < span id ="__span-0-2 "> < a id ="__codelineno-0-2 " name ="__codelineno-0-2 " href ="#__codelineno-0-2 "> </ a >
2831- </ span > < span id ="__span-0-3 "> < a id ="__codelineno-0-3 " name ="__codelineno-0-3 " href ="#__codelineno-0-3 "> </ a > < span class ="k "> class</ span > < span class ="nc "> MyActor</ span > < span class ="p "> (</ span > < span class ="n "> Actor</ span > < span class ="p "> ):</ span >
2832- </ span > < span id ="__span-0-4 "> < a id ="__codelineno-0-4 " name ="__codelineno-0-4 " href ="#__codelineno-0-4 "> </ a > < span class ="k "> async</ span > < span class ="k "> def</ span > < span class ="nf "> _run</ span > < span class ="p "> (</ span > < span class ="bp "> self</ span > < span class ="p "> )</ span > < span class ="o "> -></ span > < span class ="kc "> None</ span > < span class ="p "> :</ span >
2833- </ span > < span id ="__span-0-5 "> < a id ="__codelineno-0-5 " name ="__codelineno-0-5 " href ="#__codelineno-0-5 "> </ a > < span class ="k "> while</ span > < span class ="kc "> True</ span > < span class ="p "> :</ span >
2834- </ span > < span id ="__span-0-6 "> < a id ="__codelineno-0-6 " name ="__codelineno-0-6 " href ="#__codelineno-0-6 "> </ a > < span class ="nb "> print</ span > < span class ="p "> (</ span > < span class ="s2 "> "Hello World!"</ span > < span class ="p "> )</ span >
2835- </ span > < span id ="__span-0-7 "> < a id ="__codelineno-0-7 " name ="__codelineno-0-7 " href ="#__codelineno-0-7 "> </ a > < span class ="k "> await</ span > < span class ="n "> asyncio</ span > < span class ="o "> .</ span > < span class ="n "> sleep</ span > < span class ="p "> (</ span > < span class ="mi "> 1</ span > < span class ="p "> )</ span >
2836- </ span > < span id ="__span-0-8 "> < a id ="__codelineno-0-8 " name ="__codelineno-0-8 " href ="#__codelineno-0-8 "> </ a >
2837- </ span > < span id ="__span-0-9 "> < a id ="__codelineno-0-9 " name ="__codelineno-0-9 " href ="#__codelineno-0-9 "> </ a > < span class ="k "> await</ span > < span class ="n "> run</ span > < span class ="p "> (</ span > < span class ="n "> MyActor</ span > < span class ="p "> ())</ span > < span class ="c1 "> # (1)!</ span >
2829+ < div class ="language-python highlight "> < pre > < span > </ span > < code > < span id ="__span-0-1 "> < a id ="__codelineno-0-1 " name ="__codelineno-0-1 " href ="#__codelineno-0-1 "> </ a > < span class ="kn "> import</ span > < span class ="nn "> asyncio</ span >
2830+ </ span > < span id ="__span-0-2 "> < a id ="__codelineno-0-2 " name ="__codelineno-0-2 " href ="#__codelineno-0-2 "> </ a > < span class ="kn "> from</ span > < span class ="nn "> frequenz.sdk.actor</ span > < span class ="kn "> import</ span > < span class ="n "> Actor</ span > < span class ="p "> ,</ span > < span class ="n "> run</ span >
2831+ </ span > < span id ="__span-0-3 "> < a id ="__codelineno-0-3 " name ="__codelineno-0-3 " href ="#__codelineno-0-3 "> </ a >
2832+ </ span > < span id ="__span-0-4 "> < a id ="__codelineno-0-4 " name ="__codelineno-0-4 " href ="#__codelineno-0-4 "> </ a > < span class ="k "> class</ span > < span class ="nc "> MyActor</ span > < span class ="p "> (</ span > < span class ="n "> Actor</ span > < span class ="p "> ):</ span >
2833+ </ span > < span id ="__span-0-5 "> < a id ="__codelineno-0-5 " name ="__codelineno-0-5 " href ="#__codelineno-0-5 "> </ a > < span class ="k "> async</ span > < span class ="k "> def</ span > < span class ="nf "> _run</ span > < span class ="p "> (</ span > < span class ="bp "> self</ span > < span class ="p "> )</ span > < span class ="o "> -></ span > < span class ="kc "> None</ span > < span class ="p "> :</ span >
2834+ </ span > < span id ="__span-0-6 "> < a id ="__codelineno-0-6 " name ="__codelineno-0-6 " href ="#__codelineno-0-6 "> </ a > < span class ="k "> while</ span > < span class ="kc "> True</ span > < span class ="p "> :</ span >
2835+ </ span > < span id ="__span-0-7 "> < a id ="__codelineno-0-7 " name ="__codelineno-0-7 " href ="#__codelineno-0-7 "> </ a > < span class ="nb "> print</ span > < span class ="p "> (</ span > < span class ="s2 "> "Hello World!"</ span > < span class ="p "> )</ span >
2836+ </ span > < span id ="__span-0-8 "> < a id ="__codelineno-0-8 " name ="__codelineno-0-8 " href ="#__codelineno-0-8 "> </ a > < span class ="k "> await</ span > < span class ="n "> asyncio</ span > < span class ="o "> .</ span > < span class ="n "> sleep</ span > < span class ="p "> (</ span > < span class ="mi "> 1</ span > < span class ="p "> )</ span >
2837+ </ span > < span id ="__span-0-9 "> < a id ="__codelineno-0-9 " name ="__codelineno-0-9 " href ="#__codelineno-0-9 "> </ a >
2838+ </ span > < span id ="__span-0-10 "> < a id ="__codelineno-0-10 " name ="__codelineno-0-10 " href ="#__codelineno-0-10 "> </ a > < span class ="k "> await</ span > < span class ="n "> asyncio</ span > < span class ="o "> .</ span > < span class ="n "> run</ span > < span class ="p "> (</ span > < span class ="n "> MyActor</ span > < span class ="p "> ())</ span > < span class ="c1 "> # (1)!</ span >
28382839</ span > </ code > </ pre > </ div >
28392840< ol >
28402841< li > This line will block until the actor completes its execution or is manually stopped.</ li >
@@ -2928,12 +2929,12 @@ <h5 id="frequenz.sdk.actor--initialization">Initialization<a class="headerlink"
29282929</ span > < span id ="__span-3-4 "> < a id ="__codelineno-3-4 " name ="__codelineno-3-4 " href ="#__codelineno-3-4 "> </ a > < span class ="k "> class</ span > < span class ="nc "> EchoActor</ span > < span class ="p "> (</ span > < span class ="n "> Actor</ span > < span class ="p "> ):</ span > < span class ="c1 "> # (1)!</ span >
29292930</ span > < span id ="__span-3-5 "> < a id ="__codelineno-3-5 " name ="__codelineno-3-5 " href ="#__codelineno-3-5 "> </ a > < span class ="k "> def</ span > < span class ="fm "> __init__</ span > < span class ="p "> (</ span >
29302931</ span > < span id ="__span-3-6 "> < a id ="__codelineno-3-6 " name ="__codelineno-3-6 " href ="#__codelineno-3-6 "> </ a > < span class ="bp "> self</ span > < span class ="p "> ,</ span >
2931- </ span > < span id ="__span-3-7 "> < a id ="__codelineno-3-7 " name ="__codelineno-3-7 " href ="#__codelineno-3-7 "> </ a > < span class ="nb " > input </ span > < span class ="p "> :</ span > < span class ="n "> Receiver</ span > < span class ="p "> [</ span > < span class ="nb "> int</ span > < span class ="p "> ],</ span > < span class ="c1 "> # (2)!</ span >
2932+ </ span > < span id ="__span-3-7 "> < a id ="__codelineno-3-7 " name ="__codelineno-3-7 " href ="#__codelineno-3-7 "> </ a > < span class ="n " > receiver </ span > < span class ="p "> :</ span > < span class ="n "> Receiver</ span > < span class ="p "> [</ span > < span class ="nb "> int</ span > < span class ="p "> ],</ span > < span class ="c1 "> # (2)!</ span >
29322933</ span > < span id ="__span-3-8 "> < a id ="__codelineno-3-8 " name ="__codelineno-3-8 " href ="#__codelineno-3-8 "> </ a > < span class ="n "> output</ span > < span class ="p "> :</ span > < span class ="n "> Sender</ span > < span class ="p "> [</ span > < span class ="nb "> int</ span > < span class ="p "> ],</ span > < span class ="c1 "> # (3)!</ span >
29332934</ span > < span id ="__span-3-9 "> < a id ="__codelineno-3-9 " name ="__codelineno-3-9 " href ="#__codelineno-3-9 "> </ a > < span class ="n "> name</ span > < span class ="p "> :</ span > < span class ="nb "> str</ span > < span class ="o "> |</ span > < span class ="kc "> None</ span > < span class ="o "> =</ span > < span class ="kc "> None</ span > < span class ="p "> ,</ span > < span class ="c1 "> # (4)!</ span >
29342935</ span > < span id ="__span-3-10 "> < a id ="__codelineno-3-10 " name ="__codelineno-3-10 " href ="#__codelineno-3-10 "> </ a > < span class ="p "> )</ span > < span class ="o "> -></ span > < span class ="kc "> None</ span > < span class ="p "> :</ span >
29352936</ span > < span id ="__span-3-11 "> < a id ="__codelineno-3-11 " name ="__codelineno-3-11 " href ="#__codelineno-3-11 "> </ a > < span class ="nb "> super</ span > < span class ="p "> ()</ span > < span class ="o "> .</ span > < span class ="fm "> __init__</ span > < span class ="p "> (</ span > < span class ="n "> name</ span > < span class ="o "> =</ span > < span class ="n "> name</ span > < span class ="p "> )</ span > < span class ="c1 "> # (5)!</ span >
2936- </ span > < span id ="__span-3-12 "> < a id ="__codelineno-3-12 " name ="__codelineno-3-12 " href ="#__codelineno-3-12 "> </ a > < span class ="bp "> self</ span > < span class ="o "> .</ span > < span class ="n "> _input</ span > < span class ="p "> :</ span > < span class ="n "> Receiver</ span > < span class ="p "> [</ span > < span class ="nb "> int</ span > < span class ="p "> ]</ span > < span class ="o "> =</ span > < span class ="nb " > input </ span > < span class ="c1 "> # (6)!</ span >
2937+ </ span > < span id ="__span-3-12 "> < a id ="__codelineno-3-12 " name ="__codelineno-3-12 " href ="#__codelineno-3-12 "> </ a > < span class ="bp "> self</ span > < span class ="o "> .</ span > < span class ="n "> _input</ span > < span class ="p "> :</ span > < span class ="n "> Receiver</ span > < span class ="p "> [</ span > < span class ="nb "> int</ span > < span class ="p "> ]</ span > < span class ="o "> =</ span > < span class ="n " > receiver </ span > < span class ="c1 "> # (6)!</ span >
29372938</ span > < span id ="__span-3-13 "> < a id ="__codelineno-3-13 " name ="__codelineno-3-13 " href ="#__codelineno-3-13 "> </ a > < span class ="bp "> self</ span > < span class ="o "> .</ span > < span class ="n "> _output</ span > < span class ="p "> :</ span > < span class ="n "> Sender</ span > < span class ="p "> [</ span > < span class ="nb "> int</ span > < span class ="p "> ]</ span > < span class ="o "> =</ span > < span class ="n "> output</ span > < span class ="c1 "> # (7)!</ span >
29382939</ span > </ code > </ pre > </ div >
29392940< ol >
@@ -2942,15 +2943,15 @@ <h5 id="frequenz.sdk.actor--initialization">Initialization<a class="headerlink"
29422943 < a class ="autorefs autorefs-internal " href ="#frequenz.sdk.actor.Actor "> < code > Actor</ code > </ a > .</ p >
29432944</ li >
29442945< li >
2945- < p > We accept an < code > input </ code > argument that will be used to receive messages from
2946+ < p > We accept an < code > receiver </ code > argument that will be used to receive messages from
29462947 a channel.</ p >
29472948</ li >
29482949< li > We accept an < code > output</ code > argument that will be used to send messages to a channel.</ li >
29492950< li > We accept an optional < code > name</ code > argument that will be used to identify the actor in
29502951 logs.</ li >
29512952< li > We call < a class ="autorefs autorefs-internal " href ="#frequenz.sdk.actor.Actor.__init__ "> < code > Actor.__init__()</ code > </ a > to make sure the
29522953 actor is properly initialized.</ li >
2953- < li > We store the < code > input </ code > argument in a < em > private</ em > attribute to use it later.</ li >
2954+ < li > We store the < code > receiver </ code > argument in a < em > private</ em > attribute to use it later.</ li >
29542955< li > We store the < code > output</ code > argument in a < em > private</ em > attribute to use it later.</ li >
29552956</ ol >
29562957</ details >
@@ -2972,12 +2973,12 @@ <h5 id="frequenz.sdk.actor--the-_run-method">The <code>_run()</code> Method<a cl
29722973</ span > < span id ="__span-4-4 "> < a id ="__codelineno-4-4 " name ="__codelineno-4-4 " href ="#__codelineno-4-4 "> </ a > < span class ="k "> class</ span > < span class ="nc "> EchoActor</ span > < span class ="p "> (</ span > < span class ="n "> Actor</ span > < span class ="p "> ):</ span >
29732974</ span > < span id ="__span-4-5 "> < a id ="__codelineno-4-5 " name ="__codelineno-4-5 " href ="#__codelineno-4-5 "> </ a > < span class ="k "> def</ span > < span class ="fm "> __init__</ span > < span class ="p "> (</ span >
29742975</ span > < span id ="__span-4-6 "> < a id ="__codelineno-4-6 " name ="__codelineno-4-6 " href ="#__codelineno-4-6 "> </ a > < span class ="bp "> self</ span > < span class ="p "> ,</ span >
2975- </ span > < span id ="__span-4-7 "> < a id ="__codelineno-4-7 " name ="__codelineno-4-7 " href ="#__codelineno-4-7 "> </ a > < span class ="nb " > input </ span > < span class ="p "> :</ span > < span class ="n "> Receiver</ span > < span class ="p "> [</ span > < span class ="nb "> int</ span > < span class ="p "> ],</ span >
2976+ </ span > < span id ="__span-4-7 "> < a id ="__codelineno-4-7 " name ="__codelineno-4-7 " href ="#__codelineno-4-7 "> </ a > < span class ="n " > receiver </ span > < span class ="p "> :</ span > < span class ="n "> Receiver</ span > < span class ="p "> [</ span > < span class ="nb "> int</ span > < span class ="p "> ],</ span >
29762977</ span > < span id ="__span-4-8 "> < a id ="__codelineno-4-8 " name ="__codelineno-4-8 " href ="#__codelineno-4-8 "> </ a > < span class ="n "> output</ span > < span class ="p "> :</ span > < span class ="n "> Sender</ span > < span class ="p "> [</ span > < span class ="nb "> int</ span > < span class ="p "> ],</ span >
29772978</ span > < span id ="__span-4-9 "> < a id ="__codelineno-4-9 " name ="__codelineno-4-9 " href ="#__codelineno-4-9 "> </ a > < span class ="n "> name</ span > < span class ="p "> :</ span > < span class ="nb "> str</ span > < span class ="o "> |</ span > < span class ="kc "> None</ span > < span class ="o "> =</ span > < span class ="kc "> None</ span > < span class ="p "> ,</ span >
29782979</ span > < span id ="__span-4-10 "> < a id ="__codelineno-4-10 " name ="__codelineno-4-10 " href ="#__codelineno-4-10 "> </ a > < span class ="p "> )</ span > < span class ="o "> -></ span > < span class ="kc "> None</ span > < span class ="p "> :</ span >
29792980</ span > < span id ="__span-4-11 "> < a id ="__codelineno-4-11 " name ="__codelineno-4-11 " href ="#__codelineno-4-11 "> </ a > < span class ="nb "> super</ span > < span class ="p "> ()</ span > < span class ="o "> .</ span > < span class ="fm "> __init__</ span > < span class ="p "> (</ span > < span class ="n "> name</ span > < span class ="o "> =</ span > < span class ="n "> name</ span > < span class ="p "> )</ span >
2980- </ span > < span id ="__span-4-12 "> < a id ="__codelineno-4-12 " name ="__codelineno-4-12 " href ="#__codelineno-4-12 "> </ a > < span class ="bp "> self</ span > < span class ="o "> .</ span > < span class ="n "> _input</ span > < span class ="p "> :</ span > < span class ="n "> Receiver</ span > < span class ="p "> [</ span > < span class ="nb "> int</ span > < span class ="p "> ]</ span > < span class ="o "> =</ span > < span class ="nb " > input </ span >
2981+ </ span > < span id ="__span-4-12 "> < a id ="__codelineno-4-12 " name ="__codelineno-4-12 " href ="#__codelineno-4-12 "> </ a > < span class ="bp "> self</ span > < span class ="o "> .</ span > < span class ="n "> _input</ span > < span class ="p "> :</ span > < span class ="n "> Receiver</ span > < span class ="p "> [</ span > < span class ="nb "> int</ span > < span class ="p "> ]</ span > < span class ="o "> =</ span > < span class ="n " > receiver </ span >
29812982</ span > < span id ="__span-4-13 "> < a id ="__codelineno-4-13 " name ="__codelineno-4-13 " href ="#__codelineno-4-13 "> </ a > < span class ="bp "> self</ span > < span class ="o "> .</ span > < span class ="n "> _output</ span > < span class ="p "> :</ span > < span class ="n "> Sender</ span > < span class ="p "> [</ span > < span class ="nb "> int</ span > < span class ="p "> ]</ span > < span class ="o "> =</ span > < span class ="n "> output</ span >
29822983</ span > < span id ="__span-4-14 "> < a id ="__codelineno-4-14 " name ="__codelineno-4-14 " href ="#__codelineno-4-14 "> </ a >
29832984</ span > < span id ="__span-4-15 "> < a id ="__codelineno-4-15 " name ="__codelineno-4-15 " href ="#__codelineno-4-15 "> </ a > < span class ="k "> async</ span > < span class ="k "> def</ span > < span class ="nf "> _run</ span > < span class ="p "> (</ span > < span class ="bp "> self</ span > < span class ="p "> )</ span > < span class ="o "> -></ span > < span class ="kc "> None</ span > < span class ="p "> :</ span > < span class ="c1 "> # (1)!</ span >
@@ -2986,7 +2987,7 @@ <h5 id="frequenz.sdk.actor--the-_run-method">The <code>_run()</code> Method<a cl
29862987</ span > </ code > </ pre > </ div >
29872988< ol >
29882989< li > We implement the abstract < a href ="#frequenz.sdk.actor--the-_run-method "> < code > _run()</ code > </ a > method.</ li >
2989- < li > We receive messages from the < code > input </ code > channel one by one.</ li >
2990+ < li > We receive messages from the < code > receiver </ code > one by one.</ li >
29902991< li > We send the received message to the < code > output</ code > channel.</ li >
29912992</ ol >
29922993</ details >
0 commit comments