Kenyth Zeng's Library tagged → View Popular
24 Aug 09
Dr. Dobb's | NPTL: The New Implementation of Threads for Linux | August 1, 2005
-
Linux was late to offer production-level support for true multithreaded development.
-
interprocess communication, such as signals, pipes, or sockets.
- 3 more annotations...
Java theory and practice: Managing volatility
-
Volatile variables in the Java language can be thought of as
"synchronizedlite"; they require less coding to use thansynchronized
blocks and often have less runtime overhead, but they can only be used
to do a subset of the things thatsynchronizedcan. -
Locks offer two primary features: mutual exclusion and
visibility. - 4 more annotations...
The volatile keyword in Java
also compared with synchronized
-
its formal definition actually changed
as of Java 5. -
- The value of this variable will never be cached thread-locally: all reads and writes
will go straight to "main memory"; - Access to the variable acts as though it is enclosed in a synchronized block,
synchronized on itself.
- The value of this variable will never be cached thread-locally: all reads and writes
- 2 more annotations...
Understanding Java Multithreading and Read-Write Locks, Part 1 — Developer.com
-
the heap area may be 'likened' to the main memory, as it is here that the shared data in objects reside, and the operand stack of the thread is not the same as the working memory of the thread.
-
Each object has a lock associated with it. Critical sections of the code that access a common resource are guarded by monitors (which essentially are synchronized methods or blocks).
Double-checked locking - Wikipedia, the free encyclopedia
-
reduce the overhead of acquiring a lock by first testing the locking criterion (the "lock hint") in an unsafe manner; only if that succeeds does the actual lock proceed.
-
getting a reference to an incompletely initialized object.
- 3 more annotations...
VM Spec Threads and Locks
-
Because it is impossible
for one thread to access parameters or local variables of another thread, it does
not matter whether parameters and local variables are thought of as residing in the
shared main memory or in the working memory of the thread that owns them. -
Every thread has a working memory in which it keeps its own working copy of variables that it must use or assign. As the thread executes a program, it operates on these working copies. The main memory contains the master copy of every variable. There are rules about when a thread is permitted or required to transfer the contents of its working copy of a variable into the master copy or vice versa.
- 4 more annotations...
Threads and Locks
-
These threads independently execute code that operates on values and objects residing in a shared main memory.
-
Each object in Java is associated with a monitor, which a thread can lock or unlock. Only one thread at a time may hold a lock on a monitor.
- 6 more annotations...
11 Aug 09
Difference between sleep and wait | Geek Explains: Java, J2EE, Oracle, Puzzles, and Problem Solving!
-
both these methods are static, so even if you try to call ‘t.sleep(…)’ on a different thread, it’ll be called on the current thread only and not on the ‘t’ thread
Typical use of the volatile keyword in Java
-
So thread A thinks it's fair game
to just cache the value of the variable in a register or in its local memory
Java theory and practice: Thread pools and work queues
-
One simplistic model for building a server application would be to create a new thread each time a request arrives and service the request in the new thread.
-
the overhead of creating a new thread for each request is
significant - 9 more annotations...
04 Jun 09
What is Optimistic Locking vs. Pessimistic Locking [Archive] - DBAsupport.com Forums
-
only for that current session
-
*Most* people implement this, instead, through a single column, usually called timestamp. This column is used *for no other purpose* than implementing optimistic concurrency.
30 May 09
Google Wave Data Model and Client-Server Protocol (Google Wave Federation Protocol)
-
Stand-off annotations are pointers into the XML document and are independent of the XML document structure. They are used to represent text formatting, spelling suggestions and hyper-links.
-
There are currently two types of documents: text documents, used to represent the rich text messages in a wavelet (casually known as blips), and data documents which are typically invisible to the user (for example, tags).
- 8 more annotations...
29 May 09
Operational transformation - Wikipedia, the free encyclopedia
OT underlies Google Wave
-
Operational transformation (OT) is a theoretical framework of concurrency control that has been continuously researched in the context of group editing, a subfield of computer supported cooperative work (CSCW). OT typically replicates the shared document at all sites and allows any user to edit any part of the document at any time. Local editing operations are executed often without being delayed or blocked. Remote operations are transformed before execution to repair inconsistencies. The lockfree, nonblocking property of OT makes the local response time not sensitive to networking latencies. As a result, OT is particularly good for implementing group editing in the Web/Internet context.
-
OT was initially proposed for merging text documents represented as a sequence of characters
- 7 more annotations...
Google Wave Operational Transform (Google Wave Federation Protocol)
-
Waves are hosted XML documents that allow seamless and low latency concurrent modifications.
-
Wave uses Operational transformation (OT) as the theoretical framework of concurrency control.
- 22 more annotations...
1 - 20 of 20
Showing 20▼ items per page
Selected Tags
Related Tags
Sponsored Links
Ads by Google
Top Contributors
Groups interested in concurrent
Related Lists on Diigo
-
Designing an Academic Poster
An academic poster is made ...
Items: 5 | Visits: 2
Created by: Shanta Rohse
Diigo is about better ways to research, share and collaborate on information. Learn more »
Join Diigo






