我目前正在从事一个涉及共享relay_CAN的项目。我必须编写一个Python脚本,以便在中继被其他设备使用后锁定它。继电器应被锁定,直到从另一个终端解锁为止。如果在锁定状态下呼叫任何其他设备,则应等待其解锁。我尝试使用Lock(),Condition(),但似乎没有任何效果。有线索吗?
sem = threading.Semaphore()
def main():
parser = argparse.ArgumentParser()
parser.add_argument("--connect",
help="""connects devices""",
dest="connect")
parser.add_argument("--disconnect",
help="""disconnects devices""",
dest="disconnect")
args, _ = parser.parse_known_args()
if args.connect:
if sem.acquire(False):
sem.acquire()
print "locking.."
try:
#todo
finally:
print"locked successefully"
else:
print "pins are locked"