<div dir="ltr"><div class="gmail_extra"><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">have 2 questions regarding active oberon:<br>
<br>
1. I suppose built-in procedure AWAIT( some condition ) checks<br>
periodically if condition is not met. What is the checking time period?<br>
Can I change it?<br>
<br></blockquote><div>It is re-evaluated everytime an EXCLUSIVE block is left. There is no time-based component.</div><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">

2. What is the proper way to write/read whole RECORDs to file at once<br>
through Streams.Writer Streams.Reader ?<br>
I tried this but it generates exceptions:<br>
<br>
TYPE<br>
something = RECORD<br>
 a : ARRAY 30 OF CHAR;<br>
 b : LONGINT;<br>
END;<br>
<br>
ArrayOfChar = POINTER TO ARRAY OF CHAR;<br>
<br>
<br>
PROCEDURE test;<br>
VAR<br>
 writer : Streams.Writer;<br>
 reader : Streams.Reader;<br>
 s : something;<br>
 b : ArrayOfChar;<br>
BEGIN<br>
... want to write and read s to file<br>
<br>
b := SYSTEM.VAL(ArrayOfChar, ADDRESSOF(s) );<br>
writer.Bytes( b^, 0, SIZEOF(something)  );<br>
<br>
... and then<br>
reader.Bytes( b^, 0, SIZEOF(something) );<br>
<br></blockquote><div>If you persist the data I would suggest to explicitly serialize the fields (for forward compatibility). If you need it only temporarily your solution should be fine.</div><div><br></div><div>--Thomas</div>
<div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<br>
zdenek<br>
<br>
<br>
--<br>
<a href="mailto:Oberon@lists.inf.ethz.ch">Oberon@lists.inf.ethz.ch</a> mailing list for ETH Oberon and related systems<br>
<a href="https://lists.inf.ethz.ch/mailman/listinfo/oberon" target="_blank">https://lists.inf.ethz.ch/mailman/listinfo/oberon</a><br>
</blockquote></div><br></div></div>