Technical References - [exclusivelock]

Prevents other threads from simultaneously accessing a group of databases.

[exclusivelock database list]...WebDNA...[/exclusivelock]

To prevent a group of databases from being modified by other threads (other 'hits' to the server, or other templates or triggers), wrap an [exclusivelock] context around the WebDNA code which will be making the important exclusive changes.

Example:

[exclusivelock db=orders.db&db=lineitems.db&db=accesslog.db]
...search, delete, or modify any of orders.db, lineitems.db, or accesslog.db while being assured that no other threads can modify any of these databases until the closing /exclusivelock tag is reached.
[/exclusivelock]


The list of database names is first alphabetized so as to maintain a consistent locking order (a technique which prevents internal deadlocks), then each database lock is acquired one at a time until all locks are acquired, then the interior WebDNA is executed. If any lock cannot be acquired, the other databases are unlocked, and the interior WebDNA is not executed.

DOWNLOAD WEBDNA NOW!

Top Articles:

Tips and Tricks

A list of user-submitted tips ...

Download WebDNA Applications

WebDNA applications...

WebDNA Modules

A list of the currently available modules...

Technical Change History

This Technical Change History provides a reverse chronological list of WebDNA changes...

WebDNA Libraries

A list of available libraries for WebDNA...

F.A.Q

A compilation of some user's questions...

Related Readings:

[returnraw]

Sends 'raw' MIME headers and data back to browser...

[store]

[store] is a simple context that stores variables permanently...

[writefile]

[writefile] functions allows you to perform a wide variety of tasks...

[table]

[table] allows you to quickly create a temporary 'in line' database that is local to the template and not part of the global database cache...

[raw]

Displays enclosed text without interpreting the [xxx] tags in any way...

[capitalize]

Capitalizes the first letter of all words in a sentence...