If a thread, for example, created other threads as it tried to solve some
problem, then the little o problem could become a big o problem. But it did
not sound like that was the situation that was being described.

Jim Bromer

On Sun, Mar 8, 2015 at 8:49 PM, Jim Bromer <[email protected]> wrote:

> Microsoft .net has events that can be posted which will be read by another
> part of the code (including but not necessarily other threads). I cannot
> remember just how it is executed but I remember from long ago that the
> modern processors all have many exception processes which means that code
> can be interrupted in order to do something with 'external' (virtual or
> actual -peripheral or software) data. So a semaphore reading loop should
> not be absolutely necessary. However, most programs use some kind of loop
> and even if data is sent through an event in .net, I just used the event
> type data (the type of event that I defined) to fill in a variable in the
> other thread which was then read in a loop that examined the variable along
> with other variables. The problem is that even if you found an event-like
> method (or a software exception-like thing) the demand that the timer loop
> exit gracefully almost means that it will definitely need to stay within
> its main program loop. If you found an event-like action that you could use
> you might set the timer to 0 or something like that and let it exit
> according to the timer=0 plan or something. That would allow the program to
> react without checking some kind of event variable. However, you probably
> have to ask the java people about that.
>
> I don't like simple software switches that have to be read over and over
> again until they are set when they are only set once. However, modern
> processors don't recommend that the programmer uses dynamic code. It would
> be fairly easy to use dynamic code (with C++) to change the execution
> code if that was something that really was important. So the program
> follows one code path until the condition occurs in which case the
> execution code is changed a little. Stick in a new branch or something like
> that. With C++ and all the layers that we have between us and the machine
> code you would have to use different pieces of code like different function
> calls. But again, unless that was part of the fundamental nature of how
> your program is going to work, all the little function calls that you need
> only to be able to deal with the condition then adds extra jumps between
> the function particles. So it is really the same thing - there is going to
> be some extra little stuff in the code just to deal with the occasional
> conditional - unless you want to use a bunch of really small functions that
> are strung together anyway. You could do that in java but is it really
> going to make your program more efficient.
>
> Anyway, does it make sense for you to worry about details like little o
> stuff?
>
> Jim Bromer
>
> On Sun, Mar 8, 2015 at 4:46 AM, Piaget Modeler via AGI <[email protected]>
> wrote:
>
>> I'm working on a Psyche application this week which interacts with a
>> device
>> on behalf of an AI "mind".  Here's a proposed call  tree diagram. What
>> do you think?
>>
>> Terminated is a boolean semaphore object that tells the timers that the
>> program is
>> done, and that the timers should terminate gracefully. An event will set
>> the
>> Terminated semaphore object to True.
>>
>> The only problem is that the semaphore will be continually read by all
>> the timers
>> when determining whether to exit their timer loop.  Is there a better
>> way?
>>
>> Your thoughts?
>>
>> ~PM
>>    *AGI* | Archives <https://www.listbox.com/member/archive/303/=now>
>> <https://www.listbox.com/member/archive/rss/303/24379807-653794b5> |
>> Modify
>> <https://www.listbox.com/member/?&;>
>> Your Subscription <http://www.listbox.com>
>>
>
>



-------------------------------------------
AGI
Archives: https://www.listbox.com/member/archive/303/=now
RSS Feed: https://www.listbox.com/member/archive/rss/303/21088071-f452e424
Modify Your Subscription: 
https://www.listbox.com/member/?member_id=21088071&id_secret=21088071-58d57657
Powered by Listbox: http://www.listbox.com

Reply via email to