草庐IT

thread-sleep

全部标签

python - Ant 模拟: it's better to create a Process/Thread for each Ant or something else?

简单的研究是:Ant生活模拟我正在创建一个面向Anthill的OO结构,一个Ant的类和整个模拟器的一个类。现在我正在集思广益“如何”让Ant“活”起来......我知道有这样的项目才刚刚开始,但我正在集思广益,我不是在寻找just-ready-to-eat-dish。真诚地,我必须进行一些测试以了解“什么更好”,AFAIK线程在Python中使用的内存比进程少。当你开始模拟时,“Ant”必须做的只是:随机方向移动,如果他们找到食物->吃/带到蚁丘,如果他们从另一个正在运输食物的蚁丘找到另一只Ant->攻击->收集食物->做必须做的事情......等等......这意味着我必须在Ant

python - Python Threading.Event半忙等待更好的解决方案

我使用的是非常标准的Threading.Event:主线程到达一个运行循环的点:event.wait(60)其他人阻塞请求直到回复可用,然后发起:event.set()我希望主线程选择40秒,但事实并非如此。来自Python2.7源代码Lib/threading.py:#Balancingact:Wecan'taffordapurebusyloop,sowe#havetosleep;butifwesleepthewholetimeouttime,#we'llbeunresponsive.Theschemeheresleepsvery#littleatfirst,longerastime

mysql5.7 大量sleep进程常规处理方式

1.现象    在日常的mysql运维中我们在巡检的时候经常会发现大量的sleep进程,如下图:2. 原因这种现象一般由三种情况导致的:1.程序中对mysql_close的调用不佳2.数据库中sql的查询时间过长3.wait_timeout、interactive_timeout两个参数的值过大3.解决方案常见的问题是第三种,我们先来理解一下wait_timeout、interactive_timeout这两个参数的含义:根据mysql5.7官方文档的说明:wait_timeout可设置为全局、会话级别,吗,默认值28800,最小值1,最大值3153600,单位是秒 。他是指服务器在关闭非交互

Python:来自 `threading` 和 `multiprocessing` 的锁可以互换吗?

threading模块中的锁是否可以与multiprocessing模块中的锁互换? 最佳答案 您通常可以互换使用这两者,但您需要了解其中的差异。例如,multiprocessing.Event由命名信号量支持,它对应用程序下的平台敏感。Multiprocessing.Lock由Multiprocessing.SemLock支持-因此它需要命名信号量。本质上,您可以互换使用它们,但是使用多进程的锁会引入一些对应用程序的平台要求(即,它不能在BSD上运行:)) 关于Python:来自`th

python - twisted + gtk : should I run GUI things in threads, 还是在 react 器线程中?

根据我对twisted的理解,在react器线程中运行的任何东西都不应阻塞。所有阻塞事件都应委托(delegate)给其他线程,以便在它们完成时将回调触发回react器线程。那么这也适用于gtk吗?例如,如果连接...失败,我想显示“连接失败”消息。我这样做吗:defconnectionFailed(self,reason):dlg=gtk.MessageDialog(type=gtk.MESSAGE_ERROR,buttons=gtk.BUTTONS_CLOSE,message_format="Couldnotconnecttoserver:\n%s"%(reason.getErro

python - 同步 sleep 进入asyncio协程

我有一个协程如下:asyncdefdownload():downloader=DataManager()downloader.download()DataManager.download()方法如下所示:defdownload(self):start_multiple_docker_containers()whileTrue:check_containers_statuses()sleep(N)#synchronoussleepfromtimemodule这是一个好的做法吗?如果不是,我如何在download()中使用asyncio.sleep?或者这样的代码结构在概念上是错误的?

Exception in thread “main“ java.lang.NoSuchMethodError: com.google.comon.base.Preconditions.checkArg

hadoop-3.1.3hbase-2.2.2-bin一、问题描述:在学习林子雨老师编写的《Spark编程基础》时使用如下命令运行jar包读取HBase时出现如下错误:Exceptioninthread“main”java.lang.NoSuchMethodError:com.google.comon.base.Preconditions.checkArgument(ZLjava/lang/String;Ljava/lang/object;)v二、问题分析:对此问题在配置hive时也有出现,问题主要是虚拟机内HBase,Spark,Hadoop三者的guava版本不一致导致的。在Hive的安装

python - 我如何解决NameError : name 'threading' is not defined in python 3. 3

我有以下程序,没有别的,python3.3。当我运行它时。我明白了NameError:name'threading'isnotdefined我用谷歌搜索,但给出的答案都没有解释我的情况。任何线索?谢谢!#!/usr/bin/pythonimportUtilitiesimportosimportsysimportgetoptimporttimefromqueueimportQueuefromthreadingimportThread_db_lock=threading.Lock()我也试过_db_lock=threading.Lock 最佳答案

python - Python 中的可中止 sleep ()

我需要一个可以中止的sleep()方法(如here或here所述)。我的方法是让threading.Event.wait()在指定的持续时间内超时:defabortable_sleep(secs,abort_event):abort_event.wait(timeout=secs)abort_event.clear()在调用abortable_sleep(10,_abort)之后,我现在可以(从另一个线程)调用_event.set(_abort)让abortable_sleep()在10秒之前终止。例子:defsleeping_thread():_start=time.perf_cou

python - 为什么 GridSearchCV 在 { 'acquire' 对象的方法 'thread.lock'} 上花费超过 50% 的时间?

最近我正在调整我的一些机器学习管道。我决定利用我的多核处理器。我使用参数n_jobs=-1运行交叉验证。我还对它进行了分析,令我惊讶的是:最重要的功能是:{method'acquire'of'thread.lock'objects}由于我在Pipeline中进行的操作,我不确定这是否是我的错。所以我决定做个小实验:pp=Pipeline([('svc',SVC())])cv=GridSearchCV(pp,{'svc__C':[1,100,200]},jobs=-1,cv=2,refit=True)%pruncv.fit(np.random.rand(1e4,100),np.rando