Apparatus and method for avoiding deadlocks in a multithreaded environment

   
   

An apparatus and method for avoiding deadlocks in a multithreaded environment is provided. The apparatus and method provide a mechanism by which multiple threads are allowed to call a method virtually simultaneously without experiencing the problems regarding multiple compilations of the same method or a lock being held by one thread while other threads wait on the lock. With the apparatus and method, the first thread to call a method is the thread that causes the method to be compiled. Subsequent calls to the method, during a period of time in which the method is being compiled, are redirected to the JVM interpreter, thereby avoiding any deadlock situation.

Un aparato y un método para evitar callejones sin salida en a multithreaded el ambiente se proporciona. Los aparatos y el método proporcionan un mecanismo por el cual los hilos de rosca múltiples se permitan llamar un método virtualmente simultáneamente sin experimentar los problemas con respecto a las compilaciones múltiples del mismo método o de una cerradura que es sostenida por un hilo de rosca mientras que otros hilos de rosca esperan en la cerradura. Con el aparato y el método, el primer hilo de rosca para llamar un método es el hilo de rosca que hace el método ser compilado. Las llamadas subsecuentes al método, durante un período del tiempo en el cual se esté compilando el método, se vuelven a dirigir al intérprete de JVM, de tal modo evitando cualquier situación del callejón sin salida.

 
Web www.patentalert.com

< Populating resource-constrained devices with content verified using API definitions

< Strategy for dynamically modeling ASN.1 data to an object model

> Method and apparatus for performing correctness checks opportunistically

> Combination tool for transferring labels and appliques

~ 00174