the biggest issue is usually understanding what's happening.
just because there's a couple of lines of code together with a loop
only means those instructions are being executed sequentually
_by_that_thread. In between which, other threads have their "slice of
the processor" to run instructions and, in this case, access to common
memory (ie: Application scoped variables).
All shared scopes have this issue to consider and that's why cflock
(yeah it *is* an ugly way to go) works: deny other threads access to
this shared scope until the first thread hits the </cflock>. copying
the data and using the copy for processing avoids the issue.
it's also related to the old
if app var doesn't exist
lock
if it still really doesn't exist (not created by another thread
while locking this thread)
create app var
end if
end lock
end if
it's an easy thing to forget when you're deep in the innards of some code.
my 2c
barry.b
On 3/21/06, Hugo Ahlenius <[EMAIL PROTECTED]> wrote:
> I experimented a bit more, and it has nothing to do with CFCs really --
> in the application scope (and also likely in other shared scopes) the
> currentrow cursor is shared with the queries, at least in CFMX 6.1 and
> BD 6.2.1 (which I have tested, don't have access to CFMX 7).
>
> Workarounds:
> * Best is to duplicate (for encapsulation etc)
> * One can also cflock (ugly!)
> * Or do an index loop 1 to recordcount
>
>
> --
> Hugo Ahlenius
>
> -------------------------------------------------------------
> Hugo Ahlenius E-Mail: [EMAIL PROTECTED]
> Project Officer Phone: +46 8 412 1427
> UNEP GRID-Arendal Fax: +46 8 723 0348
> Stockholm Office Mobile: +46 733 467111
> WWW: http://www.grida.no
> Skype: callto:fraxxinus
> -------------------------------------------------------------
>
> ###########################################
>
> This message has been scanned by F-Secure Anti-Virus for Microsoft Exchange.
> For more information, connect to http://www.f-secure.com/
>
>
> ----------------------------------------------------------
> You are subscribed to cfcdev. To unsubscribe, send an email to
> [email protected] with the words 'unsubscribe cfcdev' as the subject of the
> email.
>
> CFCDev is run by CFCZone (www.cfczone.org) and supported by CFXHosting
> (www.cfxhosting.com).
>
> An archive of the CFCDev list is available at
> www.mail-archive.com/[email protected]
>
>
>
----------------------------------------------------------
You are subscribed to cfcdev. To unsubscribe, send an email to
[email protected] with the words 'unsubscribe cfcdev' as the subject of the
email.
CFCDev is run by CFCZone (www.cfczone.org) and supported by CFXHosting
(www.cfxhosting.com).
An archive of the CFCDev list is available at
www.mail-archive.com/[email protected]