locking

In Java What is the guaranteed way to get a FileLock from FileChannel while accessing a RandomAccessFile ?

I am trying to use FileLock lock(long position, long size,boolean shared) in FileChannel object As per the javadoc it can throw OverlappingFileLockException. When I create a test program with 2 threads lock method seems to be waiting to acquire the lock (both exclusive and non exclusive) But when the number threads increases in the a...

Why this lock statement doesn't work ?

why this lock test doesn't work ? it's throwing an exception bellow Console.Write that collection was modified.... static List<string> staticVar = new List<string>(); static void Main(string[] args) { Action<IEnumerable<int>> assyncMethod = enumerator => { lock (staticVar) ...

Java: thread-safe RandomAccessFile

Hi, After some serious googleing I found out that the RandomAccessFile-class is not thread-safe. Now I could use one semaphore to lock all reads and writes but I don't think that performs very well. In theory it should be possible to do multiple reads and one write at a time. How can I do this in Java? Is it possible at all? Thanks! ...

What is the best practice for using lock within inherited classes

I want to know if one class is inheriting from another, is it better to have the classes share a lock object that is defined at the base class or to have a lock object defined at each inheritance level. A very simple example of a lock object on each level of the class public class Foo { private object thisLock = new object(); priva...

MySQL locking question

I have something similar to an online chat client. When one user sends a message it will be stored in a MySQL database table with id=currentID+1. I have another client long polling and waiting for message 'id=currentID+1'. After this exchange, that row is never used again. Do I need a lock in this case? The thing I'm worried about is t...

Is the "lock" statement in C# time-consuming?

I have a method which has been called many times by other methods to hash data. Inside the method, some lock statements are used. Could you please let me know whether the lock statement is time-consuming and what is the best way to improve it. P/S: I have been finding a way to avoid using the lock statement in this method. ...

MySQL Locks: order of unblocked threads

I have a MySQL ISAM table being accessed my multiple php instances. Right now I'm using a WRITE lock to serialize access to this table. My question is how do I ensure that the PHP instances get served on a First-Come-First-Serve basis? Or is this the default behaviour? The official MySQL documentation doesn't mention anything about the...

MySQL locking problem

I have a simple setup of a set of writers and a set of readers working with a MySQL ISAM table. The writers are only inserting rows while the readers are only checking for new rows. OK, so I know that I don't need a lock in this situation, since I'm not modifying existing rows. However my Writers are accessing one more table that does n...

Turning on screen programmatically

Hi, I would like to unlock screen and switching it on to show a popup on an event trigger. I am able to unlock the screen using newKeyguardLock = km.newKeyguardLock(HANDSFREE); newKeyguardLock.disableKeyguard(); on KeyGuardService but I cannot turn on the screen. I am using wl = pm.newWakeLock(PowerManager.SCREEN_BRIGHT_WAKE_LOCK, HA...

hibernate versioning parent entity

Consider two entities Parent and Child. Child is part of Parent's transient collection Child has a ManyToOne mapping to parent with FetchType.LAZY Both are displayed on the same form to a user. When user saves the data we first update Parent instance and then Child collection (both using merge). Now comes the tricky part. When user...

Mixing synchronized() with ReentrantLock.lock()

In Java, do ReentrantLock.lock() and ReetrantLock.unlock() use the same locking mechanism as synchronized()? My guess is "No," but I'm hoping to be wrong. Example: Imagine that Thread 1 and Thread 2 both have access to: ReentrantLock lock = new ReentrantLock(); Thread 1 runs: synchronized (lock) { // blah } Thread 2 runs: l...

How to lock a transaction for reading a row and then inserting in Hibernate?

I have a table with a name and a name_count. So when I insert a new record, I first check what the maximum name_count is for that name. I then insert the record with that maximum + 1. Works great... except with mysql 5.1 and hibernate 3.5, by default the reads don't respect transaction boundaries. 2 of these inserts for the same nam...

Utility that helps in file locking - expert tips wanted

I've written a subclass of file that a) provides methods to conveniently lock it (using fcntl, so it only supports unix, which is however OK for me atm) and b) when reading or writing asserts that the file is appropriately locked. Now I'm not an expert at such stuff (I've just read one paper [de] about it) and would appreciate some fee...

Delphi: how to lock dfm-s to not change...?

Hi! We used Delphi 6 long times ago. Our problem, that Delphi have two problems with DFMs: 1.) When some linked resource (like DataSet) will removed, Delphi many times forget to ask you that "some of the resources are linked, you need to redirect...". This happens, when the actual form is not added to the project, or it is not opened. ...

ASP.NET Page.Cache versus Page.Application storage for data synchronization?

Both Page.Cache and Page.Application can store an application's "global" data, shared among requests and threads. How should one storage area be chosen over the other considering scenarios of data synchronization in the multi-threaded ASP.NET environment? Looking for best practice and experienced recommendation. ...

Locking an android phone (lock pattern or similar)

Since LOCK_PATTERN_ENABLED was moved to Settings.Secure in Froyo my app can no longer lock the screen... Does anyone know a workaround for this? Any way that my app can instantly lock the screen? No matter if its the autolock pattern or some kind of custom lock screen... ...

Multi-part question about multi-threading, locks and multi-core processors (multi ^ 3)

I have a program with two methods. The first method takes two arrays as parameters, and performs an operation in which values from one array are conditionally written into the other, like so: void Blend(int[] dest, int[] src, int offset) { for (int i = 0; i < src.Length; i++) { int rdr = dest[i + offset]; dest[i...

Is there a .Net StyleCop rule which warns about lock(this), lock(typeof, lock(<string obj>, etc.?

These 3 types of lock are apparently bad. What other type of locking is bad? Are there Stylecop / FxCop rules that would catch this? If not, then would you please help me with a custom rule implementation? They code for all of them must be similar, right? Thank you. ...

Is this a dangerous locking pattern?

I have an enumerator written in C#, which looks something like this: try { ReadWriteLock.EnterReadLock(); yield return foo; yield return bar; yield return bash; } finally { if (ReadWriteLock.IsReadLockHeld) ReadWriteLock.ExitReadLock(); } I believe this may be a dangerous locking pattern, as the ReadWriteLo...

C# Locking an object that is reassigned in lock block

Hello, I have this code in a class: private static MyObject _locker = new MyObject(); ... lock (_locker) { ... _locker = new MyObject(); ... } Will it keep the lock on _locker ? ...