标签: cpu-usage

服务器空闲时的ruby进程

我想运行一个Stalker作业,只有当CPU负载较小时才能使站点不受影响.

工作是将视频从任何格式转换为flv和mp4.所以这是一份相当昂贵的工作.

我怎么能实现这个目标?

编辑

这是一个好方法吗?

smthng怎么样

load = `uptime`.gsub(/(.*): /,'').strip.split ' '
if (load[0].to_f < 0.7 && load[0].to_f < load[1].to_f) || (!args["max_delay"].nil? && total_delay > args["max_delay"] && load[0].to_f < 0.85)
  do stuff
end
Run Code Online (Sandbox Code Playgroud)

ruby memory cpu-usage beanstalkd

2
推荐指数
1
解决办法
180
查看次数

Java CPU资源占用率100%

我编写了一个程序,当它启动时运行大约96%的CPU,然后在崩溃之前很快将CPU提示为100%.我需要跟踪CPU不断执行的操作,无论是程序运行还是特定方法或调用正在进行.

有什么建议或链接吗?

谢谢.

java cpu-usage

2
推荐指数
1
解决办法
1474
查看次数

Python:函数中的额外赋值

考虑到以下两个版本的Python中非常简单的函数,问题是哪个优先于另一个,为什么?

使用了其他分配相比,是否有额外的内存使用和/或CPU使用case 1case 2

情况1:

def f(x):
    y = x*x
    return y

案例2:

def f(x):
    return x*x

从我的观点来看,case 1它比另一个更清晰,特别是在复杂计算和提供许多返回对象的情况下.另一方面,case 2外观非常紧凑,因此被认为是非常有吸引力的.因为简单只是简单有效.你怎么看?

更新:
我不知道Python中有反汇编程序!当我了解到我的问题的答案以及检查类似想法的方法时,真是太神奇了.特别欣赏.
from dis import dis as dasm
dasm(f)

python memory-management cpu-usage assign

2
推荐指数
1
解决办法
173
查看次数

在运行时获取CPU使用率| iOS版

有什么方法可以获得iPhone的整体CPU使用率.我见过一些应用程序,如电池医生和iPhone的系统活动监视器,显示整体CPU使用率.

我找到了一个解决方案,(链接到答案)但它只给了我应用程序的CPU使用率而不是所有整体应用程序.

iphone xcode cpu-usage ios

2
推荐指数
1
解决办法
5380
查看次数

使用NIO避免高CPU使用率

我编写了一个多线程游戏服务器应用程序,它使用NIO处理多个同时连接.不幸的是,只要第一个用户连接,该服务器就会在一个核心上生成完整的CPU负载,即使该用户实际上没有发送或接收任何数据.

下面是我的网络处理线程的代码(缩写为可读性的基本部分).该类ClientHandler是我自己的类,它为游戏机制进行网络抽象.以下示例中的所有其他类都来自java.nio.

如您所见,它使用while(true)循环.我的理论是,当一个密钥可写时,selector.select()将立即返回并被clientHandler.writeToChannel()调用.但是当处理程序返回而没有写任何东西时,密钥将保持可写状态.然后立即再次调用select并立即返回.所以我忙着旋转.

有没有一种方法可以设置网络处理循环,只要没有clientHandlers发送的数据就可以休眠?请注意,低延迟对于我的用例至关重要,因此当没有处理程序拥有数据时,我不能让它睡眠任意数量的ms.

ServerSocketChannel server = ServerSocketChannel.open();
server.configureBlocking(false);
server.socket().bind(new InetSocketAddress(port));
Selector selector = Selector.open();
server.register(selector, SelectionKey.OP_ACCEPT);
// wait for connections

while(true)
{
     // Wait for next set of client connections
    selector.select();
    Set<SelectionKey> keys = selector.selectedKeys();
    Iterator<SelectionKey> i = keys.iterator();
    while (i.hasNext()) {
        SelectionKey key = i.next();
        i.remove();

        if (key.isAcceptable()) {
            SocketChannel clientChannel = server.accept();
            clientChannel.configureBlocking(false);
            clientChannel.socket().setTcpNoDelay(true);
            clientChannel.socket().setTrafficClass(IPTOS_LOWDELAY);
            SelectionKey clientKey = clientChannel.register(selector, SelectionKey.OP_READ | SelectionKey.OP_WRITE);
            ClientHandler clientHanlder …
Run Code Online (Sandbox Code Playgroud)

java network-programming cpu-usage

2
推荐指数
2
解决办法
3189
查看次数

获取线程Cpu使用情况

我有一组消耗CPU的执行,每个执行都在低优先级的线程中运行。这些线程将在进程(如IIS)中运行,该进程具有许多其他不想让它们变慢的线程。我想计算所有其他线程的cpu使用率,如果它的使用率大于50%,则我暂停一个线程,如果它的使用率小于50%,我将恢复暂停的执行。

在暂停时,我将执行状态保存在db中并终止其线程,并在恢复时启动新线程。

我需要的是一个返回线程的cpu使用率的函数。

private static void monitorRuns(object state)
{
  Process p = Process.GetCurrentProcess;
  double usage = 0;
  foreach(ProcessThread t in p.Threads)
  {
    if(!myThreadIds.Contains(t.Id)) // I have saved my own Thread Ids
    {
      usage += getUsingPercentage(t); // I need a method like getUsingPercentage
    }
  }

  if(usage > 50){
    pauseFirst(); // saves the state of first executions and terminates its threads
  }else{
    resumeFirst(); // start new thread that executes running using a state
  }
}
Run Code Online (Sandbox Code Playgroud)

此函数通过计时器调用:

Timer t = new Timer(monitorRuns,null,new TimeSpan(0,0,10),new …
Run Code Online (Sandbox Code Playgroud)

c# multithreading cpu-usage

2
推荐指数
1
解决办法
3416
查看次数

webproxy.exe进程导致100%的CPU使用率

今天我发现我的笔记本电脑的风扇是全功能的.检查performance选项卡后,task manager我看到CPU使用率是100%而不是更改.我看到列表webproxy.exe顶部的resource monitor进程,每次我结束这个过程,1秒后它再次运行.

在此输入图像描述

我搜索了它但找不到任何帮助.我暂停它以帮助我亲爱的CPU.

  • 操作系统: Windows 7专业版
  • 拱.: x64

process cpu-usage webproxy windows-7

2
推荐指数
1
解决办法
3947
查看次数

如何使用C#限制Windows进程的CPU使用率

我需要编写一个类,它将附加到某些Windows进程,监视和限制其CPU使用率.流程优先级的改变对我没有帮助,所以我真的需要编写一个与BES或ThreadMaster基本类似的程序.所以我需要创建一个类似这样的类(伪代码):

public void cpuLimiter(pid)
{
    ProcessHandle handle = attachToProcess(pid);
    while (cpuLimiting)
    {
        if (handle.cpuUsage > 30%)
        {
            handle.sleep(100miliseconds);
        }
        sleep(10miliseconds);
    }
    closeHandle(pid);
}
Run Code Online (Sandbox Code Playgroud)

我希望我说清楚我想要完成什么,只是我不知道如何.感谢每一位帮助.

c# cpu-usage cpu-time thread-priority

2
推荐指数
1
解决办法
711
查看次数

Sitecore HttpModules第二次初始化

我们正在经历突发瞬间的CPU峰值.检查我们的Sitecore日志后,我注意到有很多日志条目"11:49:26正在初始化INFO HttpModule".据我所知,这应该仅在应用程序启动时初始化.这仍然在应用程序启动后出现.我对吗?如果是这样,这些模块可以在哪里第二次初始化?

performance sitecore httpmodule cpu-usage ihttpmodule

2
推荐指数
1
解决办法
2535
查看次数

Java多线程程序没有使用大量的CPU

我是编程和Java的初学者,这是我的第一个多核程序.问题是我的程序从不使用超过13%的CPU.我不知道我是否以正确的方式做到了.

如何更快地计算并使用更多CPU资源?

我的课程包括三个课程:

  1. "使用多个线程实例化Work对象的主类

  2. 一个"T1"类,它扩展了Thread并包含要执行的工作

  3. 一个"工作"类,用于启动所需的线程编号并显示所有线程执行工作所花费的时间

这是我Main班级的代码:

public static void main(String[] args) {

  System.out.println("Number of CPUs available = " + Runtime.getRuntime().availableProcessors()); //Display the number of CPUs available
  int iteration = 100000000; // Define a number of itterations to do by all threads

  /*
  Instantiates each work with a different number of threads (1, 4, 8, 12, and 24)
  */
    Work  t1 = new Work(1);
    Work  t4 = new Work(4);
    Work  t8 = new Work(8);
    Work t12 = new …
Run Code Online (Sandbox Code Playgroud)

java performance multithreading cpu-usage

2
推荐指数
1
解决办法
112
查看次数