Henry, I think you've said it for me.

On Thu, Jan 5, 2012 at 8:38 PM, Henry Rich <henryhr...@nc.rr.com> wrote:
> I'm still on 602 but if I ever moved to J7 I would certainly need the
> timer to work, with the blocking problem fixed.
>
> Henry Rich
>
> On 1/5/2012 3:17 PM, Eric Iverson wrote:
>> Just realized wd'timer' keeps firing and if that is what you want then you
>> might be able to ignore the block and simply get the next one. Somthing
>> like the following:
>>
>> jjs'intervaltimer=setInterval("if(0==rqstate)jdoajax([],\"\",\"jev_timer[0\");",4000);'
>>
>>
>> The rqstate test avoids the block. The intervaltimer handle can be used to
>> kill the timer. That is,
>>
>> jjs'clearInterval(intervaltimer)'
>>
>> Note that if the timer event is doing output it may be hard to get run the
>> line to clear the timer. In this case you can open another jijx window and
>> do it from there.
>>
>> Maybe this is enough for you current requirements.
>>
>> On Thu, Jan 5, 2012 at 2:32 PM, Eric Iverson<eric.b.iver...@gmail.com>wrote:
>>
>>> Ian,
>>>
>>> A bit more complete (but without the blocking problem fixed) follows:
>>>
>>>     jev_timer=: 3 : 'i.5'
>>>     jjs'setTimeout("jdoajax([],\"\",\"jev_timer[0\");",4000);'
>>>
>>> Note that the name jev_timer input line is not shown as lines that start
>>> with jev_ are assumed to be events and are not logged.
>>>
>>> Let me know if you'd like the blocking problem fixed.
>>>
>>> On Thu, Jan 5, 2012 at 2:18 PM, Eric Iverson<eric.b.iver...@gmail.com>wrote:
>>>
>>>> Here is a very rough start on showing how to do a timer event for JHS.
>>>>
>>>> jjs'setTimeout("jdoajax([],\"\",\"a=: 123\");",4000);'
>>>>
>>>> Verb jjs executes javascript sentences. The setTimeout javascript
>>>> sentence runs its first arg (a javascript sentence) when 4 seconds has
>>>> elapsed. The \" sequence escapes the " and allows "s inside the quoted
>>>> string.
>>>>
>>>> The next step is to replace the a=: 123 J sentence with a call to your
>>>> timer event handler.
>>>>
>>>> This solution is not complete because the ajax execution of the J
>>>> sentence is blocked if a J sentence is already running. This can be
>>>> detected and dealt with. This could be done by a more complicated jjs
>>>> sentence that requeues the setTimeout until it is allowed to execute. A
>>>> better solution would be that the core ajax framework recognize a blocked
>>>> timer event and to run it immediately after the blocking sentence has
>>>> finished.
>>>>
>>>> If the above meets your requirements except for the blocking problem I
>>>> will clean things up and enhance the ajax request framework to run a
>>>> blocked timer event.
>>>>
>>>>
>>>>   On Thu, Jan 5, 2012 at 2:03 PM, Eric 
>>>> Iverson<eric.b.iver...@gmail.com>wrote:
>>>>
>>>>> cd (calls to external libraries) works on all platforms and specifically
>>>>> J can use cd to call dylibs on Mac. However, the timer routine you 
>>>>> referred
>>>>> to is windows only and I don't know of the mac equivalent. A dylib call is
>>>>> probably not the way to provide timer events for JHS regardless of server
>>>>> platform.
>>>>>
>>>>>
>>>>> On Thu, Jan 5, 2012 at 1:45 PM, David 
>>>>> Mitchell<davidmitch...@att.net>wrote:
>>>>>
>>>>>> You are welcome, Ian.
>>>>>>
>>>>>> I am a bit curious about J support for dylibs.  I currently do not have
>>>>>> any way
>>>>>> to try it myself, but the J DLL documentation does say:
>>>>>>
>>>>>> J can call procedures that are compiled in a shared library file. In
>>>>>> Windows
>>>>>> these files are called DLLs (dynamic link libraries) and have a .dll
>>>>>> extension.
>>>>>> In Linux they are called shared libraries or shared objects and have a
>>>>>> .so
>>>>>> extension. In Mac they are called dynamic libraries and have a .dylib
>>>>>> extension.
>>>>>> The term DLL is used here for all platforms. A procedure in a DLL is
>>>>>> called by
>>>>>> its name and filename.
>>>>>>
>>>>>> It is true that there may not be dylib functionality for Darwin that
>>>>>> matches
>>>>>> what Windows has for timer usage, but I saw a function
>>>>>> "dispatch_source_set_timer" in the GCD reference from Apple that seemed
>>>>>> as if it
>>>>>> might be a start.
>>>>>>
>>>>>> On 1/5/2012 12:54, Ian Clark wrote:
>>>>>>> Thanks, David.
>>>>>>>
>>>>>>> But this uses 'dll'. AFAIK there's no comparable way of calling dylibs
>>>>>>> in Darwin.
>>>>>>>
>>>>>>> On Thu, Jan 5, 2012 at 5:44 PM, David Mitchell<davidmitch...@att.net>
>>>>>>   wrote:
>>>>>>>> Here is a version that works with J602 and J701 jconsole.  It does
>>>>>> not work with
>>>>>>>> jhs or jgtk.  I have not tested it extensively and it may have side
>>>>>> effects or
>>>>>>>> bugs that I haven't found yet.
>>>>>>>>
>>>>>>>> http://www.jsoftware.com/jwiki/Scripts/WindowsTimer
>>>>>>>>
>>>>>>>> On 1/5/2012 8:27, Ian Clark wrote:
>>>>>>>>> How do I get a timer in j701 jhs (or jconsole)?
>>>>>>>>>
>>>>>>>>> I've been assuming wd (11!:0) doesn't work at all in j701 (in j602
>>>>>>>>> you'd do: 11!:0 'timer 3' for a callback in 3 secs).
>>>>>>>>>
>>>>>>>>> BTW J701 help (
>>>>>> http://www.jsoftware.com/docs/help701/dictionary/dx011.htm)
>>>>>>>>> still refers to 11!:0 but I assume that's just because it's been
>>>>>>>>> overlooked...?
>>>>>>>>>
>>>>>> ----------------------------------------------------------------------
>>>>>>>>> For information about J forums see
>>>>>> http://www.jsoftware.com/forums.htm
>>>>>>>>>
>>>>>>>>
>>>>>> ----------------------------------------------------------------------
>>>>>>>> For information about J forums see
>>>>>> http://www.jsoftware.com/forums.htm
>>>>>>> ----------------------------------------------------------------------
>>>>>>> For information about J forums see
>>>>>> http://www.jsoftware.com/forums.htm
>>>>>>>
>>>>>> ----------------------------------------------------------------------
>>>>>> For information about J forums see http://www.jsoftware.com/forums.htm
>>>>>>
>>>>>
>>>>>
>>>>
>>>
>> ----------------------------------------------------------------------
>> For information about J forums see http://www.jsoftware.com/forums.htm
>>
> ----------------------------------------------------------------------
> For information about J forums see http://www.jsoftware.com/forums.htm
----------------------------------------------------------------------
For information about J forums see http://www.jsoftware.com/forums.htm

Reply via email to