Dave Matthews,
I am building a thread manager for the .NET CLR that emulates your threading
model in Poly ML I am a little confused by a couple of issues in your file
Basis/Thread.Sml
You have a set of associated types declared as such
datatype threadAttribute =
EnableBroadcastInterrupt of bool
| InterruptState of interruptState
and interruptState =
InterruptDefer
| InterruptSynch
| InterruptAsynch
| InterruptAsynchOnce
You then create functions for writing these into a tuple of words as bit flags
With the following mapping
1 -> InterruptDefer
2 -> InterruptSynch
4 -> InterruptAsynch
6 -> InterruptAsynchOnce
And then mapping the lowest bit of the other word in the tuple to the flag in
EnableBroadcastInterrupt
My questions are
1. What is the semantics of these flags as related to the behavior of
threads and the Interrupt signal?
2. Can a single word be used to model these flags thusly (see below)
given that I am using a completely different runtime than what you are calling
into?
1 -> InterruptDefer
2 -> InterruptSynch
4 -> InterruptAsynch
6 -> InterruptAsynchOnce
8 -> BroadcastInterrupt
I now you don't get many questions from people working with the CLR so I
appreciate your patience
David Thayer
_______________________________________________
polyml mailing list
[email protected]
http://lists.inf.ed.ac.uk/mailman/listinfo/polyml