Forms 6 CPU racing (not race condition)

Hello Everybody,
I am having a strange problem that I was not able to find anything about in the other posings. Hoping somebody can point me to some helpful info or posings.
Here is what is going on:
I have Oracle 8i installed on an Intel P4 testing platform along with Forms 6.0.5. The machine is equiped with enough memory and power that Forms and Oracle 8i should be able to run without any trouble (I have run this setup fine on less powerful machines).
When I then run a Forms application in the new setup the Forms application starts up normally and appears to be running perfectly.
However when I look at the Windows Task Manager the Forms application turns out to be racing the processor at 100% of capacity. Even some little tiny forms application with only one Canvas and 2 blocks still causes the CPU to race at 100% capacity - even when I am not running a query! It just sits there and revs the CPU.
Even stranger when I put the input focus onto any other program (NotePad for instance) the CPU cycles die back to zero again. But when I again put the focus (using ALT-TAB or something) back onto the Forms application the CPU starts revving up again.
Note that this is NOT a "race condition" because I am still able to use the computer and even the Forms application itself. However it is NOT normal for a little tiny Forms module to be able to take up 100% of CPU cycles even when the module is not doing anything.
Anybody have any ideas what the problem could be?
Thanks for any help.
Chris

Chris,
if it doesn't hang the computer as it indicates then maybe the task manager does not show what's really consumed by Forms. Ig Forms 6.0 is the cause then I suggest to upgrade to Forms 6i as this is tested and bug fixed with newer OS and processors.
Frank

Similar Messages

  • 8.1.2 "Could not launch" message: race condition at startup

    (apologies for the cross-post; someone suggested that I post this in the Unix forum, so here it is -- I suppose it would have made sense to do this in the first place, I mustn't have been concentrating :-)
    Hi,
    I've recently upgraded our Sun Ray servers to Adobe Reader 8.1.2, and now every so often when browsing to a pdf document, Firefox says
    "Could not launch Adobe Reader 8.1.2. Please make sure it exists in your PATH [...]"
    This seems to be caused by a race condition at startup. The browser plugin runs "/bin/acroread -version", which simply echoes the version number and exits. When it's working, this happens:
    25436: write(1, " 8 . 1 . 2\n", 6) = 6
    25348/1: read(56, " 8 . 1 . 2\n", 20) = 6
    25436: _exit(0)
    25348/1: close(56) = 0
    i.e. the string is written by the script and immediately read by the browser.
    However, occasionally this happens:
    23119: write(1, " 8 . 1 . 2\n", 6) = 6
    23119: _exit(0)
    23008/1: Received signal #18, SIGCLD, in read() [caught]
    23008/1: siginfo: SIGCLD CLD_EXITED pid=23119 status=0x0000
    23008/1: read(58, 0xFFBFB5C0, 20) Err#4 EINTR
    i.e. the read() call is interrupted by the SIGCLD generated by the exiting /bin/acroread process.
    I've inserted a "sleep 5" after line 11 of the /bin/acroread script to try to alleviate this, but I haven't tested it fully.

    Hello Ian,
    Thanks for reporting this. We will try to address this issue in the next release as you have stated a valid race condition issue (though it's difficult to reproduce).
    Gaurav

  • Array Of Clusters Not Initializing or Possible Race Conditions

    Hi all,
    I've been working on a fairly complex project for work, and I haven't worked with Labview before. Unfortunately nobody in my office really has experience with it so I'm on my own. I've mostly got the project working, and it might be a little cumbersome, but if it works that's fine.
    Essentially it's a temperature control device and I made it so it's expandable, thus the clusters and arrays everywhere.
    My question is this. I've got an array of clusters indicating the status of all the plates in the system. When I start up the VI for the first time they do not initialize. They just stay grey, but when I stop it and start it once, it will work every time. I think this is kind of strange behavior. I've heard of race conditions and while I've tried to make sure t hat's not happening, it might be without me noticing.
    I've tried putting an initialize array block in the first call while loop and that doesn't do anything, and if I remove the initializer from the shift register in the top while loop that stops them being initalized altogether.
    I guess I was hoping someone might have an idea what's causing it, or could possible give my code the once over. The main bulk of it is in the very top of the code, but there are a lot of smaller events taking care of GUI type stuff.
    I've included all source code. It might be a little much but I didn't want to start pulling it apart if I don't know what's happening.
    Thanks in advance.
    Chris.
    Solved!
    Go to Solution.
    Attachments:
    Error During Cycle Controls.zip ‏3107 KB
    Stop Cycle Controls.zip ‏2115 KB
    Stop Cycle Controls.zip ‏4975 KB

    Chris Johnson wrote:
    So just to confirm, I can have one event structure with say 10 events happening? In this case could an event happen simultaneously with another? I thought I read something about each event having it's own event structure and while loop to make sure this works out.
    Each event case must complete before it can handle the next event, but many events will complete so quickly that this is not an issue (such as your "pause chart" button).  In general you should have only one event loop.  If you expect an event to take a long time to process, use a queue to hand that task off to another dedicated-purpose loop, so that the event structure can go back to waiting.  This is one example of the producer-consumer structure often mentioned on this forum: the producer is the loop containing the event structure, and it queues (produces) items to process.  A separate loop dequeues (consumes) those items and handles them appropriately.
    As GerdW mentioned, you have race conditions all over the place.  You'll never know whether the Plate Info Cluster Array is properly updated because it's being written and read simultaneously in so many places.  I'm assuming that is also where you're seeing the issue that inspired the post, and, in fact, one of those race conditions could explain what you're seeing.
    Chris Johnson wrote:
    Also, again, to confirm what I think I already know. When the event completes it outputs whatever data you output from the structure and then you can place it in a shift register. Where does this go until the next event takes place?
    I don't understand what you're asking.  Where does what go until the next event?  If by this you mean the data in the shift register - it stays in the shift register, accessible at the corresponding terminal on the left side of the loop.

  • Race conditions with UI thread

    Hi community,
    the update to LabVIEW 2014 has caused sveral of my vis to act up - vis that I had coded with race conditions with the UI thread that I was not aware of.
    Maybe they didn't exist previously, maybe I was just ignorant.
    Here is a where I first noticed something was wrong. It has a workaround inside:
    http://forums.ni.com/t5/LabVIEW/How-to-make-sure-plots-in-xy-graph-are-present/td-p/3033109
    Thanks again Norbert for your help with that.
    Now problems are showing up in other places too and it might be the tip of an iceberg. I'm a little afraid right now. It's not just xy graphs. The latest example:
    I have a sub-vi whose frontpanel I open with an invoke node inside that sub-vi. Afterwards, in the caller I register for events of frontpanel objects of the sub-vi. This fails now - apparently the fp of the sub-vi isn't open yet although the sub-vi has finished executing (yes, I use dataflow to ensure register for event is done only after the sub-vi has finished). This has a striking resemblance to my issue in the previous thread. It seems that vis can now be "finished" executing while stuff that was supposed to happen inside the sub-vi is still executing in the UI thread.
    I had not expected this.
    Is this intended behaviour?
    Is this new to LabVIEW 2014?
    Can someone please shed some light on this behavior change (if indeed it is one)?
    Can someone please advise me on a general solution/workaround for the host of problems this is causing me?
    Best regards
    Florian

    Norbert,
    I'm currently unable to reproduce the issue in my code regardless of cpu core affinity (you gotta hate random errors).
    I have attached an example that shows a simplified version of the code that has previously produced the error.
    This example might be flawed since it hasn't produced the error yet.
    The issue would show when the button "open window" is pressed, if it did at all.
    Also there is stuff in there that I just implemented in an attempt to keep the UI thread busy.
    For the core of the issue please disregard the bottom while loop in caller.vi
    I'll keep trying.
    Best regards
    Florian
    Attachments:
    subvi event registration.llb ‏56 KB

  • Form Personalization is not working for copied Sales Orders

    Hi All,
    We have a requirement in Sales Order form, if the order type is "Standard" then Ship method field should be mandatory.
    We were able to do this using below form personalization, it is working for new order creation.
    When we did the below testing it is not working
    Inactivated the ship method and try to copy the order with Standard type the field remains mandatory and null but still it is allowing to book the Sales Order.
    Please help to sort out this issue, let me know if it is not clear
    Condition
    Trigger Event : WHEN-NEW-ITEM-INSTANCE
    Trigger Object: ORDER.SOLD_TO
    Condition:
    (:ORDER.ORDER_TYPE not like '%STANDARD%')
    Action
    Type : Property
    Object Type : Item
    Target Object : ORDER.SHIPPING_METHOD
    Property Name: REQUIRED
    Value: True
    Thanks,
    CSK

    Hi CSK,
    try it in well validate item trigger.
    If that order type is list then you may disable the field in WHEN LIST CHANGED  trigger itself.
    Hope it will work,
    Regards,
    Soofi

  • Race conditions - can you actually lose the data in memory?

    I've seen posts where a race condition can actually destroy the contents of a global memory. I understand about not getting the right information if your read just beats your write, but can it actually lose the data altogether? This would mean you have to semaphore every time you write to a global if you have something polling on it to guarantee the data doesn't get lost. I've never seen this in any example programs - its hard to believe!

    I think the idea is merely that when you write to a global (or any)
    variable the previous contents are overwritten. If you intended to read the
    global before the write but the write ends up happening first then you lose.
    "mikema111" wrote in message
    news:[email protected]..
    > I've seen posts where a race condition can actually destroy the
    > contents of a global memory. I understand about not getting the right
    > information if your read just beats your write, but can it actually
    > lose the data altogether? This would mean you have to semaphore every
    > time you write to a global if you have something polling on it to
    > guarantee the data doesn't get lost. I've never seen this in any
    > example programs - its hard to be
    lieve!

  • CPU will not boot up

    CPU will not boot up. When the power button is pressed, either from a cold boot, power off or from a reset, the hard drive begins to operate, then you hear 4 beaps a pause of about 5 seconds and then the fan races.

    You may have to repurchase some programs if you can't recover their registration codes, etc... Try though some of the data recovery techniques outlined on my backup FAQ*:
    http://www.macmaps.com/backup.html
    Also try replacing the clock battery.
    - * Links to my pages may give me compensation.

  • How to prevent race conditions in a web application?

    Consider an e-commerce site, where Alice and Bob are both editing the product listings. Alice is improving descriptions, while Bob is updating prices. They start editing the Acme Wonder Widget at the same time. Bob finishes first and saves the product with
    the new price. Alice takes a bit longer to update the description, and when she finishes, she saves the product with her new description. Unfortunately, she also overwrites the price with the old price, which was not intended.
    In my experience, these issues are extremely common in web apps. Some software (e.g. wiki software) does have protection against this - usually the second save fails with "the page was updated while you were editing". But most web sites do not
    have this protection.
    It's worth noting that the controller methods are thread-safe in themselves. Usually they use database transactions, which make them safe in the sense that if Alice and Bob try to save at the precise same moment, it won't cause corruption. The race condition
    arises from Alice or Bob having stale data in their browser.
    How can we prevent such race conditions? In particular, I'd like to know:
    What techniques can be used? e.g. tracking the time of last change. What are the pros and cons of each.
    What is a helpful user experience?
    What frameworks have this protection built in?

    Hi,
    >> Consider an e-commerce site, where Alice and Bob are both editing the product listings. Alice is improving descriptions, while Bob is updating
    prices. They start editing the Acme Wonder Widget at the same time. Bob finishes first and saves the product with the new price. Alice takes a bit longer to update the description, and when she finishes, she saves the product with her new description. Unfortunately,
    she also overwrites the price with the old price, which was not intended.
    This is a classic question that you can find in any developing exam :-)
    there are several options according the behavior that fit your needs, and several points that need to be taken into consideration.
    1.  Using locking in the application side, you can make sure that two people do not open the same product for editing. this is in most cases the best option.
    * I am not talking about
    thread-safe but the implementation is almost the same. The locking can be done using singleton class and have a static boolean element. Every time a user want to edit we check this value as first action. If the value is false then we lock the and
    change it to true -> do what ever we need -> change the value to false -> unlock.
    Behavior: First person that try to edit lock the product and the second get a message that this product is unders editing. In this case you do not open connection to database and your application prevent any problem.
    2. Using "read your writes", as mentioned
    Behavior: this mean that several people can open the same product for editing, and only when they try to send it to server they get a message telling them that they have waist their
    time and someone else already change the product information. At this point they have two option: (1) overwrite what the other person did, (2) start from the beginning.
    This is the way most WIKI websites work.
    3. Using real-time web functionality like SignalR, WebSocket, or any streaming for example. In this case you can send the person that work on the edit a message like "this product have already been edit" and stop give him the extra time to
    think what you want to do. You will need to use one of the above option maybe, but since the user get the information in real time he have time to chose.
    4. Using "Change before Write" or "read before edit": The idea is to have a column that point if the row is in use. the type of this column should be same as the user unique column type. Before the user start you check the value
    of this column. If it is 0 then you change it to the user unique value (for example user_id), If the value was not 0 then you know that someone else is editing the product. In this case the locking is managed in the database. make sure that you work with transactions
    while reading the value and changing it! you can change the default from share lock to X lock as well during this action, if you really want.
    There are several other option, if those do not fits your needs
      Ronen Ariely
     [Personal Site]    [Blog]    [Facebook]

  • Custom Tag in race condition with OC4J v9.0.2.0.0...

    Hello all,
    (I tried deploying my application with OC4J 9.0.3 but none of my existing
    tags worked)
    I developed a OC4J web application implementing my own tag library extension
    and found out that there was occurring a race condition to the fact that two
    users (different sessions) where accessing the same
    tag at the same time. In the offending tag implementation I only have
    instance members and not static which could also cause a
    concurrent access problem.
    I found that OC4J was reusing concurrently the same
    Tag instance when it should not do that!!!
    public class pagesIteratorTag extends BodyTagSupport {
    // only instance class members...
    public void doInitBody() throws JspException {
    System.out.println("pageSetIteratorTag::doInitBody - Tag instance value: " + this.toString() + " for user: " + this.pageContext.getSession().getAttribute("j_username"));
    public int doAfterBody() throws JspException {           
    System.out.println("pageSetIteratorTag::doAfterBody - Tag instance value: " + this.toString() + " for user: " + this.pageContext.getSession().getAttribute("j_username"));
    Note the pagesIteratorTag@2e same instance is used when it should not
    1 because the tag instance should be protected from multiple concurrent
    access even though it can be pooled and reused if it is free.
    pageSetIteratorTag::doInitBody - Tag instance value: com.kdlabs.fogal.tagext.pagesIteratorTag@2e for user: Frank
    pageSetIteratorTag::doAfterBody - Tag instance value: com.kdlabs.fogal.tagext.pagesIteratorTag@2e for user: Frank
    pageSetIteratorTag::doInitBody - Tag instance value: com.kdlabs.fogal.tagext.pagesIteratorTag@2e for user: Giovanni
    pageSetIteratorTag::doAfterBody - Tag instance value: com.kdlabs.fogal.tagext.pagesIteratorTag@2e for user: Giovanni
    pageSetIteratorTag::doInitBody - Tag instance value: com.kdlabs.fogal.tagext.pagesIteratorTag@2e for user: Giovanni
    pageSetIteratorTag::doAfterBody - Tag instance value: com.kdlabs.fogal.tagext.pagesIteratorTag@2e for user: Giovanni
    Session for user Frank throws a null pointer exception because Giovanni's session
    started accessing the variable.
    Can anyone advise please?
    Best Regards,
    Giovanni

    First of all, you said none of your tags worked in 9.0.3. What happened? Did you do any debugging of the problem?
    Comparing the "toString()" output of your tag does not guarantee they are the same instance. That is just the output of "hashcode()", not the "pointer" to the object. The hashcode is generated from the contents of the object, not its "identity".
    I suggest you track the NPE in the debugger and get more information before you assume the container is at fault (which is still an outside possibility). SDK API Javadoc
    Object class:
    The general contract of hashCode is:
    1-. Whenever it is invoked on the same object more than once during an execution of a Java application, the hashCode method must consistently return the same integer, provided no information used in equals comparisons on the object is modified. This integer need not remain consistent from one execution of an application to another execution of the same application.
    So, the toString() is properly returning the suffix of the object instance
    number unique for that instance and is then being reused by OC4J even though
    it is being accessed from another session thread, that must not happen and it
    is not compliant with the JSP spec.
    The other history is that when I implemented my custom tags OC4J was JSP 1.1 compliant
    and not 1.2, so after moving to 1.2 the scripting variables can be defined in XML and
    by subclassing TagInfo class, the last option doesn't work with OC4J 9.0.3, not good...
    Thanks for your help,
    I will keep trying to figure out what the problem migth be,
    Best Regards,
    Giovanni

  • Race condition?? javax.faces.el.PropertyNotFoundException: Error testing pr

    Hi All,
    I created a SelectOneChoice using data control (via a Session Facade) on a page. It works fine. (say includePage.jspx)
    Then I try to include this page into other pages say mainPage.jspx (after change the tag from view to subview in includePage.jspx). I need to do this include because multiple pages will include this page.
    Now when I try to run mainPage.jspx, I have the following exception:
    javax.faces.el.PropertyNotFoundException: Error testing property 'inputValue' >>>in bean of type nullThe bean in this exception message is referring to something defined in the includePage.jspx page def file, but I am running mainPage.jspx - so I am wondering if this is a sort of race condition, i.e when mainPage.jspx is ruuning, no variables inside includePage.jspx page def can be accessed.
    I searched the forum but did not have much luck. Any suggestions will be greatly appreciated!!!

    Hi,
    any binding used on a subview must be included in the binding of the main page. So your mainPage.jspx must include the binding for the listbox.
    In 10.1.3 there is no option to inherit the binding container content of an included page.
    Frank

  • What is dead locks with oracle and wht is race condition wrt oracle

    what is dead locks with oracle and wht is race condition wrt oracle

    > And do you know what a race condition is all about?
    It is a term used to indicate several processes attempting to use the same resource that is not capable of servicing all these at the same time. This could be due to the resource not being thread safe or implemented as a serialised resource.
    It is often easy to look up definitions on Google. In the Google search field, type "define:race condition".
    The following [url http://www.google.co.za/search?hl=en&q=define%3Arace+condition&btnG=Google+Search&meta=]web definitions page is displayed.

  • How to solve this race condition

    Hi there,
    the following code was taken from an official Java Tutorial at http://java.sun.com/docs/books/tutorial/essential/threads/synchronization.html but it's bugy 'cause it's creating race conditions I cannot handle.
    // this is the consumer
    // it tries to get the content of cubbyhole
    // but as soon as "available" becomes "false"
    // the content can change
    public synchronized int get() {
            while (available == false) {
                try {
                    wait();
                } catch (InterruptedException e) { }
            available = false; // <-- the producer can access the cubbyhole
            notifyAll(); // the producer is being notified (wake up)
            return contents;
        }Imagine the scheduler interrupts the consumer just after the "notifyAll()" method (race condition). The producer can access the cubbyhole (available = false) and store a new value in it. Due to the fact that the cubbyhole is a reference the "return contents" command in the consumer will now return the new (overwritten) value. This code definitely won't work. The only way it works is to clone (!) the current "contents" in a separate variable BEFORE awaking the producer and enabling it to make changes.
    I had serious troubles in using the wait() methods and like to know your oppinions/experiences about that.
    Thx for reading.
    90210

    I'm not going to bother looking at that tutorial, but I'd venture to guess that you are making a false assumption. Since get() is synchronized, no other thread can acquire a lock to the object being synchronized on while this method is changing the value of 'available' to false. But without seeing the context of what those other threads might be doing, it's hard to tell if you really have a valid claim or not (that it's 'buggy'). But 99.99999% of the time, its your own mistake/misinformation/invalid analysis.

  • [svn:bz-trunk] 21111: Bug: BLZ-578 - [Coverity] potential race condition for class flex.messaging.MessageBroker

    Revision: 21111
    Revision: 21111
    Author:   [email protected]
    Date:     2011-04-21 06:12:37 -0700 (Thu, 21 Apr 2011)
    Log Message:
    Bug: BLZ-578 - potential race condition for class flex.messaging.MessageBroker
    QA: Yes
    Doc: No
    Details: The bug was fixed by change 19598 already, but also adding a minor fix to not call setSystemSettings in initThreadLocal method becuase there are no thread local variables in MessageBroker anymore.
    Ticket Links:
        http://bugs.adobe.com/jira/browse/BLZ-578
    Modified Paths:
        blazeds/trunk/modules/core/src/flex/messaging/MessageBroker.java

  • KODO 4.2 - RACE condition issue

    Hi All,
    Recently we have migrated our application (DEM ap0467) to Weblogic 10.3 on 20 FEB 2010. Since then we are observing that there is a race condition occurring in the code where it is interacting with the database.
    We use KODO for interacting with the database & this version of weblogic supports KODO 4.2, earlier to this we were using KODO 4.0.1. After upgrading KODO to become compatible with new version of Weblogic we have seen this acute problem in working of our application.
    Whenever new trade comes in our application one process picks the data, inserts and commits it in database & publishes the message on internal queue, another MDB picks this msg from this queue & fires select query on the DB but this time it doesn't find the data from database & throws an exception giving error "... Not found in Database" but when we check the database, the data remains present there.
    So our primary analysis says that the KODO is not flushing data to the database on time & it tries to keep this data in memory only & so in the next step the other process doesn't find the data in DB.
    We tried using different properties of KODO to flush data to the DB as soon as it gets change such as
    kodo.FlushBeforeQueries
    but its not working.
    So could you please give some pointers who know this issue or could help on KODO from oracle support ?

    Try closing the entityManagerFactory itself before publishing the message. This will force Kodo to flush all data.
    This is not the permanent solution since closing and opening the entityManagerFactory with each request is expensive But this will ensure the that its Kodo issue.

  • Interval race condition - AS3 bug??

    I have included the output and the two code segments that
    trigger the output. I do not understand how this could happen.
    Trace shows that clearInterval(19) occurs yet Wakeup seems to
    trigger spontaneously still trying to clearInterval(19). This
    occurs when user strums keypad triggering multiple calls to
    KeyDownFunc. You can execute this code yourself by selecting
    Lesson1 on page 1 of ItOnlyTakes1.org. It takes a few strumming
    tries to trigger it but the following code demonstrates what is
    happening within. Need help. (Interesting to note that 16 was never
    cleared.)
    Following code triggers the generation of a new display which
    requires a user answer to be caught in KeyDownFunc. sleepID is a
    global variable.
    private function WakeUp():void {
    clearInterval(sleepID);
    trace("Wakeup calling: Cleared " + sleepID);
    NewNumber();
    Internal part of KeyDownFunc that calls WakeUp to trigger new
    problem. The sleep interval is the time needed for the user to view
    the correct answer was given BEFORE triggering a new WakeUP and
    thus a new number
    if (answer.length == subquanAnswer.length) {
    if (answer == subquanAnswer && answerSign ==
    subquanAnswerSign ) {
    soundOutChannel = answerSound.play();
    sleepID = setInterval(WakeUp, 1000);
    trace("Call Wakeup: answer is " + answer + " " +
    subquanAnswer + " New sleepID: " + sleepID);
    gradeText.text=" CORRECT";
    gradeText.setTextFormat(correctanswerformat);
    } else {
    gradeText.text=" INCORRECT";
    gradeText.setTextFormat(incorrectanswerformat);
    Output showing problem:
    introListener calling
    Call Wakeup: answer is 7 7 New sleepID: 2
    Wakeup calling: Cleared 2
    Call Wakeup: answer is 7 7 New sleepID: 4
    Wakeup calling: Cleared 4
    Call Wakeup: answer is 7 7 New sleepID: 6
    Wakeup calling: Cleared 6
    Call Wakeup: answer is 4 4 New sleepID: 8
    Wakeup calling: Cleared 8
    Call Wakeup: answer is 4 4 New sleepID: 10
    Wakeup calling: Cleared 10
    Call Wakeup: answer is 9 9 New sleepID: 12
    Wakeup calling: Cleared 12
    Call Wakeup: answer is 9 9 New sleepID: 14
    Wakeup calling: Cleared 14
    Call Wakeup: answer is 4 4 New sleepID: 16
    Call Wakeup: answer is 4 4 New sleepID: 17
    Wakeup calling: Cleared 17
    Call Wakeup: answer is 6 6 New sleepID: 19
    Wakeup calling: Cleared 19
    Wakeup calling: Cleared 19
    Wakeup calling: Cleared 19
    Wakeup calling: Cleared 19
    Wakeup calling: Cleared 19
    Wakeup calling: Cleared 19
    Wakeup calling: Cleared 19
    Wakeup calling: Cleared 19

    To all,
    I understand the insistence to clear before setting, but I
    have not figured out how to get clearing and setting into the same
    function. I am currently using a flag to avoid the race condition
    that my code, not AS3, has created. This is what I am rethinking.
    My current flow is like this.
    1) generate a NewNumber()
    2) check keys until correct number entered using KeyEvent.
    Then set an interval to wait until the student has had time to
    consider the correctness of this answer and to play the audio
    feedback.
    3) Interval timeout triggers WakeUp which clears the interval
    then generates a NewNumber.
    Only problem was, kids kept entering keys AFTER they had
    answered correctly which, before my using a flag, was triggering
    new setIntervals and the problem above.
    I do not see how I can have my KeyEvent handler clear the
    interval or how I can have my WakeUp functions set the interval.
    They are two distinct functions.
    If I do not clear the interval in WakeUp a long delay in
    answering will trigger another NewNumber.
    If I set it in WakeUp then I don't give the student enough
    time to answer.
    If I do not set it in keydown then I don't know how to ensure
    they have time to see and hear the feedback
    I can't clear it in KeyDownFunc because the kid may not push
    a key and allow WakeUP to create a NewNumber()
    I hope my brain isn't frying.
    I do appreciate the continued effort in helping me and help
    on this forum has improved my coding almost as much as if I had
    someone watching over my shoulder. LOL, that would be
    instantaneous.

Maybe you are looking for

  • IPad Mini Syncing Issues

    I have an iPad mini with retina display, yesterday I wanted to add some music to my iPad, I've had an iPod before so I think I am reasonably experienced with syncing using iTunes. After launching iTunes it recommended me to update to 11.1, I did so a

  • USB or dmg files not showing up in finder

    To be more specific, whenever i insert a usb drive or mount a .dmg files they don't show up in the finder. I check the disk utility and it says they are working. But when i poen finder there's nothing under devices section. I've check the preferences

  • Can i start managed server from another UNIX BOX ..

              Hello,           I have created Admin Server on 1 UNIX Box & Managed SErver on 2nd UNIX Box. After           starting ADMIN server on one UNIX Box, i wanted to start managed server using           same script.I can manually login to 2nd uni

  • Nokia 2730 (vodafone.hu) email (gmail) settings?

    I have an active and working internet connection at vodafone, using a 2730 classic. My problem is that neither with POP or IMAP works. I used to set the correct settings detailed on gmail site, but I only get this error when I try to log on: 'Unable

  • Can you extract an image from the Preview Data?

    Sometime ago I deleted an image and it's completely gone from my hard drive and backups.  There is still an image in the Library and even clicking on it shows the 1:1 view. Is there a way of extracting this from the Preview Data - anything would be b