草庐IT

BackGroundWorker

全部标签

c# - TCP Accept 循环的线程类型 : BackgroundWorker, Thread,或 ThreadPool

我正在编写一个TCP服务器,它的核心是一段由TcpListener很好地封装的相当标准的绑定(bind)-监听-接受代码。我在开发中运行的代码现在有效,但我正在寻找对我选择的线程模型的一些讨论://Setupthesocketlistener//*THIS*isrunningonaSystem.Threading.Thread,ofcourse.tpcListener=newTcpListener(IPAddress.Any,myPort);tpcListener.Start();while(true){Socketso=tpcListener.AcceptSocket();try{M

c# - 单客户端 TCP 服务器模型

我是C#的新手,过去主要从事基于Web的编码工作。我正在创建一个将与单个客户端通信的TCP服务器。我知道我需要多个线程,因为我不希望我的程序阻塞等待连接(或读取数据、发送等)。到目前为止,我已经编写了一个简单的测试应用程序,其中包含一个GUI和一个用于与客户端通信的类。主GUI类创建通信类的一个实例。我在BackgroundWorker中有socket.accept调用,我试图将连接的套接字传递回RunWorkerCompletedEventArgs.Result中的通信类。这一直没有奏效。我可以中断DoWork方法并查看套接字已连接。然后我将DoWorkEventArgs.Resul

python - 生成的子进程是否被视为 Heroku 上的新测功机?

我刚从Epio转到Heroku,在阅读了他们的新流程模型后,我想知道Heroku如何处理子流程。常见问题解答说youcancreatesubprocesses,但没有描述这样做的任何含义。是否每个子流程都算作您必须付费的新测功机?如果是这样,使用Gunicorn不会因为它预先fork其子流程而变得昂贵吗?最后,由于Heroku隔离其进程,您如何与您的子进程通信? 最佳答案 子流程由单个测功机处理。我不是python开发人员,但我在我的Heroku站点(Rails)上使用Unicorn,通常有4个子进程都包含在一个dyno中。您产生的

ruby-on-rails - 如何使用后台 worker 保存记录?

如果我将一个大于5mb的视频文件保存到服务器上。我应该创建一个后台作业来保存这个文件吗?这应该怎么做?我的视频模型有标题、描述和附件列/字段。所有字段都是必需的。在defcreate中,我应该做类似"ifResque.enqueue(Save,@video)"的操作,而不是执行"if@video.save"?我不确定如何做到这一点,因为将参数传递给Resque.enqueue()会将其转换为散列。其次,对于“”ifResque.enqueue(Save,@video)“”,需要一个true或false。然而,Resque.enqueue不能返回任何东西。还是我错了?按钮线是。使用带有r

ruby-on-rails - 如何使用后台 worker 保存记录?

如果我将一个大于5mb的视频文件保存到服务器上。我应该创建一个后台作业来保存这个文件吗?这应该怎么做?我的视频模型有标题、描述和附件列/字段。所有字段都是必需的。在defcreate中,我应该做类似"ifResque.enqueue(Save,@video)"的操作,而不是执行"if@video.save"?我不确定如何做到这一点,因为将参数传递给Resque.enqueue()会将其转换为散列。其次,对于“”ifResque.enqueue(Save,@video)“”,需要一个true或false。然而,Resque.enqueue不能返回任何东西。还是我错了?按钮线是。使用带有r

python - Flask:传递后台工作(rq,redis)

我想做一件非常简单的事情:启动一个worker来做某事,然后将答案返回给用户。我正在尝试结合使用Flask和RQ来做到这一点。importosfromflaskimportFlask,sessionfromsomewhereimportdo_somethingfromrqimportQueuefromworkerimportconnapp=Flask(__name__)app.debug=Trueapp.secret_key='....'q=Queue(connection=conn)@app.route('/make/')defmake():job=q.enqueue(do_some

python - Flask:传递后台工作(rq,redis)

我想做一件非常简单的事情:启动一个worker来做某事,然后将答案返回给用户。我正在尝试结合使用Flask和RQ来做到这一点。importosfromflaskimportFlask,sessionfromsomewhereimportdo_somethingfromrqimportQueuefromworkerimportconnapp=Flask(__name__)app.debug=Trueapp.secret_key='....'q=Queue(connection=conn)@app.route('/make/')defmake():job=q.enqueue(do_some

c# - Backgroundworker 不会报告进度

我有一个后台工作人员在运行一个长时间的数据库任务。我想在任务运行时显示进度条。不知何故,后台工作人员不会报告任务的进度。这是我的:BackgroundWorker_bgwLoadClients;_bgwLoadClients=newBackgroundWorker();_bgwLoadClients.WorkerReportsProgress=true;_bgwLoadClients.DoWork+=newDoWorkEventHandler(_bgwLoadClients_DoWork);_bgwLoadClients.RunWorkerCompleted+=newRunWorker

c# - Backgroundworker 不会报告进度

我有一个后台工作人员在运行一个长时间的数据库任务。我想在任务运行时显示进度条。不知何故,后台工作人员不会报告任务的进度。这是我的:BackgroundWorker_bgwLoadClients;_bgwLoadClients=newBackgroundWorker();_bgwLoadClients.WorkerReportsProgress=true;_bgwLoadClients.DoWork+=newDoWorkEventHandler(_bgwLoadClients_DoWork);_bgwLoadClients.RunWorkerCompleted+=newRunWorker

c# - Cannot modify the logical children for this node at this time because a tree walk is in progress 是什么意思?

我正在后台工作线程的完成方法中设置对象的DataContext。出于某种原因,我收到一条错误消息:此时无法修改此节点的逻辑子节点,因为正在进行指向Chart1.DataContext=allDates行的树遍历。atreewalkisinprogress是什么意思?我也尝试过使用Dispatcher操作进行此设置,但出现了同样的错误……有什么想法吗?Google对此错误消息一无所获。导致此问题的代码是Microsoft图表工具包的内部代码...我想知道我是否在他们的控件中发现了错误...没有调度器:voidbg_RunWorkerCompleted(objectsender,RunWo