On Mon, 07 Dec 2009, Xavi wrote: Hi,
> Maybe you need to put this before .- > #xcommand BEGIN SEQUENCE => BEGIN SEQUENCE WITH { |oErr| Break( oErr ) } > or better yet .- > #xcommand TRY => BEGIN SEQUENCE WITH t_bBreak > #xcommand CATCH [<!oErr!>] => RECOVER [USING <oErr>] <-oErr-> > #xcommand FINALLY => ALWAYS > > THREAD STATIC t_bBreak := { |oErr| Break( oErr ) } In this context it's not necessary to use thread static variable. Harbour gives full read synchronization in accessing complex variables so it's enough to use: STATIC s_bBreak := { |oErr| Break( oErr ) } It's the most efficient way because we eliminate creating new code block each time BEGIN SEQUENCE WITH ... is used. Anyhow the overhead caused by creating new codeblock is very small so it should bot be big problem and above improvement is usable only if BEGIN SEQUENCE WITH ... is called millions times in some loop. best regards, Przemek _______________________________________________ Harbour mailing list (attachment size limit: 40KB) Harbour@harbour-project.org http://lists.harbour-project.org/mailman/listinfo/harbour