obsolete/thread.c
void __thread_lock( JIMP_obj obj, JIMP_thread_s *own_thread ) {

	JIMP_thread_s *obj_th;
	obj_th = heap[obj].vm_t;

	__add_lock( obj, own_thread );	
	pthread_mutex_lock( &obj_th->o_lock ); 

   /* Who is owner of this lock */
	heap[obj].vm_t->towner = own_thread->t;
	heap[obj].vm_t->towner_obj = own_thread->obj;
}
/* Set lock to obj by thread and add lock to the lock list 
**  monitorenter opcode
*/
Set lock to obj by thread and add lock to the lock list
monitorenter opcode
Set lock to obj by thread and add lock to the lock list monitorenter opcode
void __thread_lock( JIMP_obj obj, JIMP_thread_s *own_thread ) {
	JIMP_thread_s *obj_th;
	obj_th = heap[obj].vm_t;
	__add_lock( obj, own_thread );	
	pthread_mutex_lock( &obj_th->o_lock ); 
	heap[obj].vm_t->towner = own_thread->t;
	heap[obj].vm_t->towner_obj = own_thread->obj;
}
void __thread_lock ( JIMP_obj obj , JIMP_thread_s * own_thread ) { JIMP_thread_s * obj_th ; obj_th = heap [ obj ] . vm_t ; __add_lock ( obj , own_thread ) ; pthread_mutex_lock ( & obj_th -> o_lock ) ; heap [ obj ] . vm_t -> towner = own_thread -> t ; heap [ obj ] . vm_t -> towner_obj = own_thread -> obj ; }
Set lock to obj by thread and add lock to the lock list
monitorenter opcode
Set lock to obj by thread and add lock to the lock list monitorenter opcode
/* Who is owner of this lock */