当前位置: 首页>>代码示例>>Python>>正文


Python Thread.isRunning方法代码示例

本文整理汇总了Python中pychron.core.ui.thread.Thread.isRunning方法的典型用法代码示例。如果您正苦于以下问题:Python Thread.isRunning方法的具体用法?Python Thread.isRunning怎么用?Python Thread.isRunning使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在pychron.core.ui.thread.Thread的用法示例。


在下文中一共展示了Thread.isRunning方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。

示例1: FusionsLaserManager

# 需要导入模块: from pychron.core.ui.thread import Thread [as 别名]
# 或者: from pychron.core.ui.thread.Thread import isRunning [as 别名]

#.........这里部分代码省略.........
        if self.use_video:
            self.stage_manager.stop_recording()

    def degasser_factory(self):
        from pychron.mv.degas.degasser import Degasser

        dm = Degasser(
            laser_manager=self,
            video=self.stage_manager.video,
        )
        return dm

    def do_machine_vision_degas(self, lumens, duration, new_thread=False):
        if self.use_video:
            dm = self.degasser_factory()

            def func():
                dm.degas(lumens, duration)

            if new_thread:
                self._degas_thread = Thread(target=func)
                self._degas_thread.start()
            else:
                func()

    def get_brightness(self):
        if self.use_video:
            return self.stage_manager.get_brightness()
        else:
            return super(FusionsLaserManager, self).get_brightness()

    def is_degassing(self):
        if self._degas_thread:
            return self._degas_thread.isRunning()
            # ===============================================================================
            # pyscript interface
            # ===============================================================================

    def _move_to_position(self, position, autocenter):

        if self.stage_manager is not None:
            if isinstance(position, tuple):
                if len(position) > 1:
                    x, y = position[:2]
                    self.stage_manager.linear_move(x, y)
                    if len(position) == 3:
                        self.stage_manager.set_z(position[2])
            else:

                self.stage_manager.move_to_hole(position)
            return True

    def set_stage_map(self, mapname):
        if self.stage_manager is not None:
            self.stage_manager.set_stage_map(mapname)

    def _enable_hook(self, **kw):
        resp = self.laser_controller._enable_laser(**kw)
        if self.laser_controller.simulation:
            resp = True

        return resp

    def _disable_hook(self):
        resp = self.laser_controller._disable_laser()
        if self.laser_controller.simulation:
开发者ID:OSUPychron,项目名称:pychron,代码行数:70,代码来源:fusions_laser_manager.py

示例2: StageManager

# 需要导入模块: from pychron.core.ui.thread import Thread [as 别名]
# 或者: from pychron.core.ui.thread.Thread import isRunning [as 别名]

#.........这里部分代码省略.........
            self.stage_controller._z_position = self._default_z

        if self.home_option in ['XY', 'Home All']:
            time.sleep(0.25)

            # the stage controller should  think x and y are at -25,-25
            self.stage_controller._x_position = -25
            self.stage_controller._y_position = -25

            self.info('moving to center')
            self.stage_controller.linear_move(0, 0, block=True,
                                              sign_correct=False)

    def _get_hole_by_position(self, x, y):
        if self._stage_map:
            return self._stage_map._get_hole_by_position(x, y)

    def _get_hole_by_name(self, key):
        sm = self._stage_map
        return sm.get_hole(key)

    #===============================================================================
    # special move
    #===============================================================================
    def _stop(self, ax_key=None, verbose=False):
        self.stage_controller.stop(ax_key=ax_key, verbose=verbose)
        if self.parent.pattern_executor:
            self.parent.pattern_executor.stop()

    def _move(self, func, pos, name=None, *args, **kw):
        if pos is None:
            return

        if self.move_thread and self.move_thread.isRunning():
            self.stage_controller.stop()
        if name is None:
            name = func.func_name

        self.move_thread = Thread(name='stage.{}'.format(name),
                                  target=func, args=(pos,) + args, kwargs=kw)
        self.move_thread.start()

    def _drill_point(self, pt):
        zend = pt.zend
        vel = pt.velocity

        # assume already at zstart
        st = time.time()
        self.info('start drilling. move to {}. velocity={}'.format(zend, vel))
        self.set_z(zend, velocity=vel, block=True)
        et = time.time() - st

        self.info('drilling complete. drilled for {}s'.format(et))

    def _move_polygon(self, pts, velocity=5,
                      offset=50,
                      use_outline=True,
                      find_min=False,
                      scan_size=None,
                      use_move=True,
                      use_convex_hull=True,
                      motors=None,
                      verbose=True,
                      start_callback=None, end_callback=None):
        '''
            motors is a dict of motor_name:value pairs
开发者ID:UManPychron,项目名称:pychron,代码行数:70,代码来源:stage_manager.py


注:本文中的pychron.core.ui.thread.Thread.isRunning方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。