디시인사이드 갤러리

갤러리 이슈박스, 최근방문 갤러리

갤러리 본문 영역

코드 한 번 봐주셈

dot(125.128) 2011.08.27 00:01:24
조회 46 추천 0 댓글 0

    def run(self):
        while True:
            self.url = self.queue.get()
           
            #put working list to tell worker thread not to put url twice
            self.work_locker.acquire()
            self.work_list.append(self.url)
            self.work_locker.release()
           
           
            print(\'miner is running : \' + self.getName() +\' has work with \' + self.url )
           
            #try:
                #build cache
               
            #get post queue first
            self.__parser_list.ParseThis(self.url)
            self.__temp_post_queue = self.__parser_list.GetQueue()
            #print(self.__temp_post_queue.qsize())
            #get processed post
            self.__temp_postdata = queue.Queue()
           
            for a in range(2):
                self.__t = gall_parser.post_parser(self.__temp_post_queue, self.__temp_postdata)
                self.__t.setDaemon(True)
                self.__t.start()
           
            #wait until post queue become empty
            self.__temp_post_queue.join()
            #print("post output data number" + str(self.__temp_postdata.qsize()) )
            #sort by time order
            self.__temp_post_list = []
            while not self.__temp_postdata.empty() :
                elem = self.__temp_postdata.get()
                #print(elem)
               
            #for elem in self.__temp_postdata:
                self.__temp_post_list.append(elem)
               
            #[url, order]
            self.__temp_post_list.sort( key=operator.itemgetter(1) )
           
            #make the cache
            self.__temp_cache = page_maker(self.url, self.__temp_post_list)
           
           
           
            #add a cache in list
           
            #lock cache list
            self.locker.acquire()
           
           
            #cache : [url, time of using, time, data]
            self.__status_adding = False
           
            #find if there is the old one
            for self.__cache_elem in self.cache_list:
                if self.__cache_elem[0] == self.url:
                    self.__cache_elem[2] = time.time()
                    self.__cache_elem[3] = self.__temp_cache
                    self.__status_adding = True
                    print("old cache has been refreshed")
                    break;
           
            #There was no old one
            if not self.__status_adding:
           
                #check whether cache list reach the max number
                if len(self.cache_list) >= self.max_cache:
           
                    #find the least used cache
                    self.__temp_least_used = self.cache_list[0][1]
                   
                    for self.__cache_elem in self.cache_list:
                        if self.__temp_least_used < self.__cache_elem[1]:
                            self.__temp_least_used = self.__cache_elem[1]
                   
                    #replace the least used one
                    self.__cache_elem[0] = self.url
                    self.__cache_elem[1] = 0
                    self.__cache_elem[2] = time.time()
                    self.__cache_elem[3] = self.__temp_cache
                   
                #if cache list isn\'t full
                else:
                    self.cache_list.append( [self.url, 0, time.time(), self.__temp_cache] )
           
            #unlock cache list
            self.locker.release()
           
            #work completed, put off item in working list
            self.work_locker.acquire()
            try:
                self.work_list.remove(self.url)
            except:
                print("What happened!?")
            self.work_locker.release()

주석 이정도 달면 괜찮음?

추천 비추천

0

고정닉 0

0

댓글 영역

전체 댓글 0
본문 보기

하단 갤러리 리스트 영역

왼쪽 컨텐츠 영역

갤러리 리스트 영역

갤러리 리스트
번호 제목 글쓴이 작성일 조회 추천
설문 탈모 걱정 없어 보이는 머리숱 금수저 스타는? 운영자 25/07/14 - -
267589 잡스 복기 전에는 망하는줄 알았고 망할뻔했어 .3(1.11) 11.08.28 54 0
267585 아오 빡쳐 관악산 이고 뭐고 다 때려쳐!!! [2] 거칠게갤로그로 이동합니다. 11.08.28 80 0
267579 남자는 시크해야해 [1] 우ㅈ갤로그로 이동합니다. 11.08.28 90 0
267578 안드로이드어플개발중인데 [3] 운■지갤로그로 이동합니다. 11.08.28 107 0
267577 아오 빡쳐 코리안 타임 훡휴다 ㅡㅡ [1] 거칠게갤로그로 이동합니다. 11.08.28 120 0
267574 형들 점심은 먹었어? [3] 좋은아버지갤로그로 이동합니다. 11.08.28 55 0
267571 안철수 교수가 얼마전 방송 인터뷰에서 [1] 분당살람갤로그로 이동합니다. 11.08.28 116 0
267570 이번에 휴학하는 사람 없나? [7] 치킨마루(220.117) 11.08.28 76 0
267569 ISEC2011 참가하신 분들 수고하셨습니다. [2] !factorial(121.173) 11.08.28 92 0
267567 헤드퍼스트 자바랑 세컨에디션2랑 차이 많이 나?? 거칠게갤로그로 이동합니다. 11.08.28 66 0
267565 아 시밤 방금 아래 남자들의 천국 봣는데 [7] 거칠게갤로그로 이동합니다. 11.08.28 124 0
267562 와나... 겜 만들겠다고 온 신입들이.... [2] 겜프머(222.110) 11.08.28 148 0
267561 남자들한테 천국인 나라.jpg [2] ㅇㅇ(222.107) 11.08.28 271 2
267560 솔까말 25살 이하면 인간이 아닌거 같다. [4] 초식남(219.251) 11.08.28 130 0
267559 나도 유학 한번 준비해볼까? 갈 수 있을거 같은데 [2] 좋은아버지갤로그로 이동합니다. 11.08.28 70 0
267558 나도 자살춤횽 러브스토리 보고 싶은데 [2] y녀6디리(218.146) 11.08.28 45 0
267555 내가 프갤에 오는 세가지이유 [3] dijkstra(211.197) 11.08.28 102 0
267554 우리 학교 에서 HCI 가르쳤었어. [2] 좋은아버지갤로그로 이동합니다. 11.08.28 86 0
267553 찌질하게 언어가지고 그러냐 ㅋㅋㅋ [1] monoless갤로그로 이동합니다. 11.08.28 79 0
267551 한때 이곳을 php코더들이 점령했던 때가 있엇다. [3] 초식남(219.251) 11.08.28 129 0
267550 우리 대학원에서 연구하는 것 중 하나가 [5] 분당살람갤로그로 이동합니다. 11.08.28 137 0
267549 와 지난주 정보처리 필기 떨어진줄 알았는데 [2] 메탈쨩갤로그로 이동합니다. 11.08.28 79 0
267547 쓰레기 예술. [2] Deskjet(220.75) 11.08.28 107 0
267545 이 ㅄ드라. 자료구조와 디자인 패턴은 이미 배운상태다. ㅄ드라. [5] 초식남(219.251) 11.08.28 124 0
267542 웹프라고 다 똑같은 웹프가 아님. [3] dijkstra(211.197) 11.08.28 108 0
267541 세상을 바꾸는건 웹이야 ㅄ드라. [4] 초식남(219.251) 11.08.28 131 0
267540 요즘에 피해망상자가 뻘글을 싸고 있구나. [4] Deskjet(220.75) 11.08.28 110 0
267539 난 웹프고 웹에 있어서 c는 걍 ㅄ ㅋㅋㅋ [5] 초식남(219.251) 11.08.28 130 0
267537 ㅄ들이 C까면 조올라 흥분 햌ㅋㅋㅋ [1] 초식남(219.251) 11.08.28 74 0
267536 마소 망해가는데 C# 배워서 모하냐 [1] 초식남(219.251) 11.08.28 111 0
267535 여기가 퍼킹 치킨맨 유망주들이 바글댄다는 그곳? 초식남(219.251) 11.08.28 47 0
267534 학부생들이 학원생을 까듯이 치킨맨들도 딴거하다 온사람들 싫어할듯 [2] ㅇㅇ(61.77) 11.08.28 82 0
267533 내가 디시에 동영상올리고싶어서 [5] 가격거품갤로그로 이동합니다. 11.08.28 106 0
267532 30대인데 지금부터 자바 독학해서 취업 가능함? [7] ㅇㅇㅇ(122.38) 11.08.28 393 0
267531 대학원이 뭐 어때서 [3] 분당살람갤로그로 이동합니다. 11.08.28 119 0
267530 주립대가 안좋은점 (학부) [7] ㅁㄴㅇㄹ(130.126) 11.08.28 193 0
267529 횽들 [2] iseeyou(124.49) 11.08.28 52 0
267527 주 분야좀 나눠봅시다 [1] dijkstra(211.197) 11.08.28 58 0
267526 피자는 기름진 음식인가여? [1] mercedes㉦benz갤로그로 이동합니다. 11.08.28 77 0
267525 아 맙소사 오늘도 출근이라니 ㅠㅠ 거칠게갤로그로 이동합니다. 11.08.28 41 0
267523 jquery 만져본적 없는 얘들이 자바스크립트가 되는게 없다고 그러지 [1] 초식남(219.251) 11.08.28 93 0
267521 날씨 좋으니 시내 서점이라도 가서 책이나 하나 사야겠따. [1] 생각놀이갤로그로 이동합니다. 11.08.28 54 0
267520 대전 사시는 분들 없나요? [3] 별벼리(118.217) 11.08.28 58 0
267519 자바스크립트로 안되는게 어딨니 다되지. [1] 초식남(219.251) 11.08.28 81 0
267518 날씨가 좋으니 밖에 나가 데이트라도 해 [1] 거칠게갤로그로 이동합니다. 11.08.28 44 0
267516 야 html5 표준이 2014년에 나오는데 지금 배워서 모해 ㅋㅋㅋ [1] 초식남(219.251) 11.08.28 121 0
267515 학부 MIT 어찌어찌 합격되도 [4] ㅁㄴㅇㄹ(130.126) 11.08.28 119 0
267514 잡스뉴스보면 한국 왜이러나 싶더만 -_- YesMan갤로그로 이동합니다. 11.08.28 68 0
267513 저 html5를 배우려고 하는데요.. [6] 별벼리(118.217) 11.08.28 116 0
267511 진주로 출발합니다!! 필!!승!! [7] 돌고래스피커갤로그로 이동합니다. 11.08.28 79 0
뉴스 ‘채무의 아이콘’ 임채무 “두리랜드 빚 190억, 이자만 한 달에…” 디시트렌드 07.18
갤러리 내부 검색
제목+내용게시물 정렬 옵션

오른쪽 컨텐츠 영역

실시간 베스트

1/8

뉴스

디시미디어

디시이슈

1/2