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:

WebDNA Libraries

A list of available libraries for WebDNA...

WebDNA Modules

A list of the currently available modules...

Download WebDNA Applications

WebDNA applications...

F.A.Q

A compilation of some user's questions...

Technical Change History

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

Tips and Tricks

A list of user-submitted tips ...

Related Readings:

[protect]

...

DB encryption

Database Automatic Encryption (from WebDNA 8...

[SQLresult]

...

[commitdatabase]

[COMMITDATABASE db=name...

[ddesend]

Sends text to a DDE server program on the local machine...

[getchars]

Extracts a portion of the text (also known as substring or Mid$)...