Loosing control and doEvents
- Posted by alrobnett <alrobnett at alumni.princeton.edu> Jan 03, 2004
- 424 views
Thanks, Brian. Your comments are right on. I experienced a machine hangup when I forced Euphoria to write out a string without sequence markers, and then later read it back in as follows: .... node_array = {} for i=1 to 65535 do node_array &= sprintf("%08d",i) end for node_array &= #1A fn = open("nodes.dat", "w") if fn=-1 then puts(2,"Could not create or open file") x = wait_key() abort(x) else puts(fn, node_array) close(fn) end if .... .... node_array = {} node_array8 = {} trace(1) for i=1 to 65335 do for j=1 to 8 do node_array8 &= getc(fn) end for node_array = append(node_array, node_array8) end for The resulting file has the expected length (524281). The system first reported it as having length zero for reasons that I do not understand. I have forgotten what I did between that time and the time at which it reported the length correctly. Trace reveals that the first subsequence (8 characters) is read in with no problem. The next getc() results in loss of control. As has been pointed out, doEvents would not have been of any use in this situation. My own ability to investigate the problem further is hampered both by my lack of knowledge, and by the fact that my computer has developed the enraging habit of having the power switch become inactive so that it must be unplugged. Then, on startup it freezes in the BIOS activation, immediately after the NVidia graphics card is recognized. It remains unusable for several hours, but responds "almost" properly after a night of being off. I say almost because, on boot up the next morning, the screen has a jumbled appearance and the computer must be turned off and back on. At this point, the power switch works just fine. The symptoms suggest: temperature effect capacitor discharge time static electricity discharge volatile memory effect I suppose temperature is the most likely cause and replacement of the computer is the most likely solution. Anyone ever seen a similar case? I would appreciate comments on either the coding problem or the hardware problem. Allen