<div dir="ltr">Hi Denis,<div><br></div><div>    as others have pointed out one can subclass Process.  One can also add instance variables to Process.  The constraint is that the first four (*) instance variables must be left unaltered.  The VM makes use of the first four:</div><div><br></div><div><div>Object subclass: #Link</div><div><span class="gmail-Apple-tab-span" style="white-space:pre">      </span>instanceVariableNames: 'nextLink'</div></div><div><div>Link subclass: #Process</div><div><span class="gmail-Apple-tab-span" style="white-space:pre"> </span>instanceVariableNames: 'suspendedContext priority myList...</div></div><div><br></div><div>(*five when we have the multithreaded FFI, the fifth being threadId used to bind processes to specific OS threads when required)<br></div><div><br></div><div>The same goes for ProcessorScheduler - the VM uses quiescentProcessLists & activeProcess, and Semaphore - the VM uses firstLink lastLink & excessSignals.</div></div><div class="gmail_extra"><br><div class="gmail_quote">On Thu, Aug 17, 2017 at 5:03 AM, Denis Kudriashov <span dir="ltr"><<a href="mailto:dionisiydk@gmail.com" target="_blank">dionisiydk@gmail.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr">Hi.<div><br></div><div>Is it allowed to subclass Process?  I remember that there were some problems with it but I could not find any information.  </div><div><br></div><div>Generally I think about system processes which can be represented by concrete subclasses. For example explicit UIProcess can be used to remove many #isUIProcess conditions from system.</div><div><br></div><div>Best regards,</div><div>Denis</div></div>
</blockquote></div><br><br clear="all"><div><br></div>-- <br><div class="gmail_signature" data-smartmail="gmail_signature"><div dir="ltr"><div><span style="font-size:small;border-collapse:separate"><div>_,,,^..^,,,_<br></div><div>best, Eliot</div></span></div></div></div>
</div>