예제를 게시 할 예정 이었지만 스크류로 말했지만 대신 가지고있는 것을 게시합니다. 나 좀 쉬워. 나는 루비에 익숙해. 파이썬은 나에게 아주 새로운 것이다.클래스가있는 파이썬 스레드
나는 노래 한 묶음을 보유하고있는 que라는 파일이 있습니다. 나는 que가 그것에 어떤 노래를 가지고 있는지 끊임없이 검사하는 배경 스레드를 만들고 싶다. 노래가있는 경우 첫 번째 줄에서 노래를 재생 한 다음 첫 번째 줄을 지 웁니다. (.que.swp).
이제 문제는 백그라운드에서이 작업을 수행하는 방법을 모르겠다는 것입니다. 사용자가 노래를 que 파일에 추가 할 수있는 다른 클래스가 있습니다. 그래서 그들은 동시에 실행해야합니다.
class MusicPlayer(threading.Thread):
def __init__(self):
super(MusicPlayer, self).__init__()
self.que_file = "que"
self.playQue()
def playQue(self):
while 1:
try:
f = open(self.que_file, "r")
songUp = f.readline()
songUp = songUp.rstrip()
cmd = "cvlc \"%s\" vlc://quit &>/dev/null" % (songUp)
os.system(cmd)
data="".join(open(self.que_file).readlines()[1:-1])
open(".que.swp","wb").write(data)
os.remove(self.que_file)
os.rename(".que.swp", self.que_file)
print "\n%s added %s to the que" % (self.user, self.dir)
except:
print "No Que File Exists"
time.sleep(1)
#main#
if __name__ == '__main__':
player = MusicPlayer()
player.start()
print "helloWorld"
"helloworld"는 절대로 터미널에 인쇄하지 않습니다. 그것은 단지 내 수업 반복을 계속합니다. ps - 기분이 나아진다면 내 추한 명령을 정리할 수 있습니다. 나는 새로운 것을 기억합니다. 나는 이것에 몇 시간이고 묻기에 의지했다.
고마워요! 그것은 나를 미치게했다. 실제로 그 실행 방법이 무엇인지 알지 못했습니다. 미래를위한 명확한 언급 –