pylock.java

来自「tinyos最新版」· Java 代码 · 共 47 行

JAVA
47
字号
// Copyright (c) Corporation for National Research Initiativespackage org.python.modules;import org.python.core.*;public class PyLock extends PyObject {    private boolean locked=false;    //private Object lock = new Object();    public boolean acquire() {        return acquire(true);    }    public synchronized boolean acquire(boolean waitflag) {        if (waitflag) {            while (locked) {                try {                    wait();                } catch (InterruptedException e) {                    System.err.println("Interrupted thread");                }            }            locked = true;            return true;        } else {            if (locked) {                return false;            } else {                locked = true;                return true;            }        }    }    public synchronized void release() {        if (locked) {            locked = false; notifyAll();        } else {            throw Py.ValueError("lock not acquired");        }    }    public boolean locked() {        return locked;    }}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?