<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML dir=ltr><HEAD><META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=unicode">
<META content="MSHTML 6.00.2800.1528" name=GENERATOR></HEAD>
<BODY>
<DIV id=idOWAReplyText11554 dir=ltr>
<DIV dir=ltr><FONT face="Courier New" color=#000000 size=2>Hi 
Surindar,</FONT></DIV>
<DIV dir=ltr><FONT face="Courier New" size=2>I am  not sure of what you 
refer to as there being a reference</FONT></DIV>
<DIV dir=ltr><FONT face="Courier New" size=2>to a supervisor in for 
instance gen_server:start_link, but non</FONT></DIV>
<DIV dir=ltr><FONT face="Courier New" size=2>in gen_event:start_link. There is 
infact no reference to the</FONT></DIV>
<DIV dir=ltr><FONT face="Courier New" size=2>supervisor in gen_server:start_link 
either. The relationship</FONT></DIV>
<DIV dir=ltr><FONT face="Courier New" size=2>between the supervisor and its 
newly created child process is</FONT></DIV>
<DIV dir=ltr><FONT face="Courier New" size=2>established by the gen_server or 
gen_event code automatically.</FONT></DIV>
<DIV dir=ltr><FONT face="Courier New" size=2>And of course the fact that a 
client function calling the</FONT></DIV>
<DIV dir=ltr><FONT face="Courier New" size=2>start_link function is called from 
the the supervisor in</FONT></DIV>
<DIV dir=ltr><FONT face="Courier New" size=2>questions. A supervisor is made to 
call the clientfunction</FONT></DIV>
<DIV dir=ltr><FONT face="Courier New" size=2>starting the new child by placing 
it in its children specification.</FONT></DIV>
<DIV dir=ltr><FONT face="Courier New" size=2></FONT> </DIV>
<DIV dir=ltr><FONT face="Courier New" size=2>Have you taken a look at 
the Working with OTP chapters in</FONT></DIV>
<DIV dir=ltr><FONT face="Courier New" size=2>the online documentation? There is 
for instance an example on</FONT></DIV>
<DIV dir=ltr><FONT face="Courier New" size=2>how to start an event-manager 
process using gen_event.</FONT></DIV>
<DIV dir=ltr><FONT face="Courier New" size=2></FONT> </DIV>
<DIV dir=ltr><FONT face="Courier New" size=2><A 
href="http://www.erlang.org/doc/doc-5.4.12/doc/design_principles/part_frame.html">http://www.erlang.org/doc/doc-5.4.12/doc/design_principles/part_frame.html</A></FONT></DIV>
<DIV dir=ltr><FONT face="Courier New" size=2></FONT> </DIV>
<DIV dir=ltr><FONT face="Courier New" size=2>Best Regards,</FONT></DIV>
<DIV dir=ltr><FONT face="Courier New" size=2>Lennart</FONT></DIV>
<DIV dir=ltr><FONT face="Courier New" size=2></FONT> </DIV>
<DIV dir=ltr><FONT face="Courier New" color=#000000 
size=2></FONT> </DIV></DIV>
<DIV id=idSignature2187 dir=ltr>
<DIV><FONT face="Courier New" color=#000000 
size=2>-------------------------------------------------------------</FONT></DIV>
<DIV><FONT face="Courier New" color=#000000 size=2>Lennart 
Ohman                   
phone   : +46-8-587 623 27</FONT></DIV>
<DIV><FONT face="Courier New" size=2>Sjöland & Thyselius Telecom 
AB  cellular: +46-70-552 6735</FONT></DIV>
<DIV><FONT face="Courier New" size=2>Sehlstedtsgatan 
6               
fax     : +46-8-667 8230</FONT></DIV>
<DIV><FONT face="Courier New" size=2>SE-115 28 STOCKHOLM, 
SWEDEN     email   : <A 
href="mailto:lennart.ohman@st.se">lennart.ohman@st.se</A></FONT></DIV></DIV>
<DIV dir=ltr><BR>
<HR tabIndex=-1>
<FONT face=Tahoma size=2><B>Från:</B> owner-erlang-questions@erlang.org genom 
Surindar Sivanesan<BR><B>Skickat:</B> to 2006-03-02 13:56<BR><B>Till:</B> 
erlang-questions@erlang.org<BR><B>Ämne:</B> OTP tree doubts<BR></FONT><BR></DIV>
<DIV>
<DIV>Hi all,</DIV>
<DIV> </DIV>
<DIV>I have some doubts in OTP design.</DIV>
<DIV> </DIV>
<DIV>1.In gen_event behaviour, it is mentioned in the document that, 
start_link() function creates an event manager process as part of a supervision 
tree.But in that function there is no parameter of supervisor reference. In case 
of gen_server or gen_fsm behaviour, the start_link function has the supervisor 
reference as parameter. I'm able to understand gen_fsm and gen_server but 
gen_event is still confusing. If there is any example applying gen_event, please 
give me. </DIV>
<DIV> </DIV>
<DIV>2.I can create a thread which continuously running in a loop</DIV>
<DIV> </DIV>
<DIV>ex:</DIV>
<DIV>-module(sample).</DIV>
<DIV> </DIV>
<DIV>start()-></DIV>
<DIV>spawn(sample,continuous,[]).</DIV>
<DIV><BR clear=all>continuous()-></DIV>
<DIV>%%Functionality is done here</DIV>
<DIV>continuous().</DIV>
<DIV> </DIV>
<DIV>whether the same type of thread is implemented as child like gen_fsm, 
gen_server, gen_event in OTP tree.</DIV>
<DIV> </DIV>
<DIV>Please clarify me<BR>-- <BR>with regards,<BR>S.Surindar 
</DIV></DIV></BODY></HTML>