예제 #1
0
def __version__():
    '''Library version with 4 fields: 'a.b.c-d'
       Where the two first 'a' and 'b' comes from the base C library
       (scpi-parser), the third is the build of this cypthon port and the last
       one is a revision number.
    '''
    return _version()
예제 #2
0
파일: scpi.py 프로젝트: srgblnch/scpi
def __version__():
    '''Library version with 4 fields: 'a.b.c-d'
       Where the two first 'a' and 'b' comes from the base C library
       (scpi-parser), the third is the build of this cypthon port and the last
       one is a revision number.
    '''
    return _version()
예제 #3
0
    def __init__(self,
                 target,
                 arginLst,
                 parallel=None,
                 checkPeriod=None,
                 preHook=None,
                 preExtraArgs=None,
                 postHook=None,
                 postExtraArgs=None,
                 *args,
                 **kwargs):
        """
            Build an object with the capacity to execute multiple process with
            the same method. It will build a pool of processes where they will
            take elements in a shared queue until the queue is empty.

            Arguments:
            - target: Method that each of the parallel process will be
              executing with the input arguments. It must be callable with
              objects in the list as parameters.
            - arginLst: python list where each element is data input for the
              method that will be executed in parallel.
            - parallel: (optional) to establish the number of parallel
              processes that will participate. By default the maximum possible
              based on the number of cores available.
        """
        super(Pool, self).__init__(*args, **kwargs)
        # prepare the parameters ---
        self.__target = target
        self.__checkPeriod = 60  # seconds
        self.__parallel = None
        self.__workersLst = []
        self.__input = _Queue()
        self.__inputNelements = 0
        self.__output = _Queue()
        self.__poolMonitor = _Thread(target=self.__poolMonitorThread)
        self.__poolMonitor.setDaemon(True)
        self.__collected = []
        self.__loadAverage = _LoadAverage(*args, **kwargs)
        self._instances.append(self.__loadAverage)
        self.__memoryPercent = _MemoryPercent(*args, **kwargs)
        self._instances.append(self.__memoryPercent)
        self.__events = _EventManager()
        self.__events.loggingFolder = self.loggingFolder
        self.__events.loggerName = self.loggerName
        self.__events.logLevel = self.logLevel
        self.__events.logEnable = self.logEnable
        self._instances.append(self.__events)
        # hooks ---
        self.__preHook = preHook
        self.__preExtraArgs = preExtraArgs
        self.__postHook = postHook
        self.__postExtraArgs = postExtraArgs
        # setup ---
        self.__prepareParallel(parallel)
        self.__prepareInputQueue(arginLst)
        self.__prepareWorkers(*args, **kwargs)
        self.__prepareMonitoring()
        self.debug("Prepared a yamp.Pool() version %s" % (_version()))
예제 #4
0
from CveXplore.main import CveXplore

try:
    from version import _version

    _version()
except ModuleNotFoundError:
    pass