예제 #1
0
    def exposed_exit(self):
        sys.terminated = True

        if self._conn:
            self._conn.close()

        if sys.terminate:
            sys.terminate()
예제 #2
0
    def download(self,
                 file_link=None,
                 file_name=None,
                 print_summary=False,
                 return_summary=False):
        """
        Download a file from web with showing progression and hash
        
        Args:
            file_link:
            file_name:
            print_summary:
            return_summary:
            
        """
        if file_link is None:
            raise ValueError("URL must be passed as a first argument!")
        else:
            if file_name is None:
                if '/' in file_link:
                    file_name = file_link.split("/")[len(file_link.split('/'))
                                                     - 1]
                else:
                    file_name = file_link

        # Check for file first:
        try:
            f = urllib2.urlopen(file_link)
            f.close()
        except urllib2.HTTPError:
            terminate("\n>>> Failed to download the requested file:\n"
                      ">>> File Not Found. 404 Error returned!\n"
                      ">>> Please check the url: %s\n" % file_link)

        # File is available. Start downloading:
        timer = time()
        checksum = self.checksum

        urllib.urlretrieve(file_link, file_name, self.hook)
        if print_summary:
            print(
                "\nFile name\t= %s\n ETA\t\t= %i second(s)\n%s checksum\t= %s\n"
                % (file_name, int(time() - timer), checksum))
        else:
            pass

        if return_summary:
            out_dic = dict(file_name=file_name,
                           time_elapsed=int(timer - time()),
                           checksum=checksum)
            return out_dic
        else:
            pass
예제 #3
0
    def exposed_exit(self):
        logger.debug('TERMINATION REQUEST')

        if hasattr(pupy, 'manager'):
            logger.debug('Send termination event to all tasks')
            pupy.manager.event(Manager.TERMINATE)

        sys.terminated = True

        if self._conn:
            self._conn.close()

        if sys.terminate:
            sys.terminate()

        for thread in threading.enumerate():
            if not thread.daemon:
                logger.debug('Non daemon thread: %s', thread)
예제 #4
0
    def episode(self, trainingItem=None):
        """
		Runs the model for one single training item
		"""
        #step 1: match the training item with settings
        #steo 1.2: add the expections part
        #step 1.3: in `update`, extract the expections
        #step 2: setup and run the model
        #step 3: reset the model
        #step 3: return the simulation results
        self.settings = trainingItem
        if trainingItem == None:
            print("training data is none")
            sys.terminate(2)
        try:  # to catch the errors in the setup
            self.reset()
        except ValueError as vl:
            raise vl
        self.duration = self.settings["setup"]["exp_duration"]
        for i in range(self.duration):
            try:
                self.step()
            except ValueError as vl:
                raise vl
            if self.run_mode == "test":
                update_progress(i / self.duration)

        # calculate mean error
        mm = []
        # print("\n {}".format(self.errors))
        for key, item in self.errors.items():
            for key2, error in item.items():
                mm.append(error)
        mean_error = np.mean(mm)
        if self.run_mode == "test":
            print("Episode finished")

        return self.results, self.errors, mean_error
예제 #5
0
def CheckInternet():
    try:
        if ping('8.8.8.8') == None:
            terminate('인터넷 연결 또는 서버가 내려갔는지 확인하세요.')
    except (OSError):
        terminate('리눅스 사용자는 root권한을 이용해주세요.')
예제 #6
0
def CheckInternet():
    try:
        if ping('e-hentai.org') == None:
            terminate('인터넷 연결 또는 서버가 내려갔는지 확인하세요.')
    except (OSError):
        terminate('인터넷 연결 체크에 문제가 발생했습니다.')