标签: nptl

使用Linux NPTL的Java I/O与Java新I/O(NIO)

我的Web服务器使用通常的Java I/O和每个连接机制.如今,他们越来越user with用户(长轮询连接).但是,连接大多是空闲的.虽然这可以通过添加更多的Web服务器来解决,但我一直在尝试对NIO实现进行一些研究.

我对它有一个复杂的印象.我已经读过基准测试,其中Linux中新的NPTL库的常规I/O 优于NIO.

使用Java I/O配置和使用最新的NPTL for Linux有什么真实的体验?有没有提高性能?

在更大范围的问题上:

在标准服务器类机器(带有四核处理器的戴尔)中我们希望正常执行的最大I/O和阻塞线程数(我们在Tomcat线程池中配置)是多少(使用Linux NPTL库?).如果线程池变得非常大,比如超过1000个线程会有什么影响?

任何参考和指针将非常感谢.

java linux multithreading nio nptl

21
推荐指数
1
解决办法
5220
查看次数

NPTL和pthread令人困惑

NPTL和POSIX线程之间的基本区别是什么?这两个是如何进化的?

linux posix pthreads nptl

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

NPTL最大线程为65528?

以下代码应该生成100,000个线程:

/* compile with:   gcc -lpthread -o thread-limit thread-limit.c */
/* originally from: http://www.volano.com/linuxnotes.html */

#include <stdlib.h>
#include <stdio.h>
#include <unistd.h>
#include <pthread.h>
#include <string.h>

#define MAX_THREADS 100000
int i;

void run(void) {
  sleep(60 * 60);
}

int main(int argc, char *argv[]) {
  int rc = 0;
  pthread_t thread[MAX_THREADS];
  printf("Creating threads ...\n");
  for (i = 0; i < MAX_THREADS && rc == 0; i++) {
    rc = pthread_create(&(thread[i]), NULL, (void *) &run, NULL);
    if (rc == 0) {
      pthread_detach(thread[i]);
      if …
Run Code Online (Sandbox Code Playgroud)

c linux multithreading pthreads nptl

5
推荐指数
1
解决办法
4505
查看次数

pthread_create():什么是默认优先级和shceduling策略

惠普手册页(链接)说

"默认情况下,新线程的调度策略和优先级是从创建线程继承的 - 也就是说,默认情况下,pthread_create(3)例程忽略在指定线程属性对象中设置的调度策略和优先级.因此,要创建在调用pthread_create(3)之前,一个受调度策略和优先级设置在指定线程属性对象中的线程,程序必须使用pthread_attr_setinheritsched(3)例程将继承线程
属性对象的调度属性设置为PTHREAD_EXPLICIT_SCHED."

这适用于Linux posix线程(NPTL pthread)吗?

如果没有,影响使用pthread_create()创建的线程的优先级和调度策略的因素是什么?

linux gcc pthreads nptl

5
推荐指数
1
解决办法
3143
查看次数

设置线程/ proc/PID/cmdline?

Linux/NPTL上,线程被创建为某种进程.

我可以看到我的一些进程有一个奇怪的cmdline:

cat /proc/5590/cmdline 
hald-addon-storage: polling /dev/scd0 (every 2 sec)
Run Code Online (Sandbox Code Playgroud)

你知道如何为我的进程的每个线程做到这一点吗?这对调试非常有帮助.

/我现在正在调查HAL来源

谢谢

linux debugging multithreading cmd nptl

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

内核级线程库

我必须实现内核级线程,但是在网上搜索时,我发现在 linux 中可以通过三种方法创建内核级线程:

  1. 国家知识产权局
  2. 线程
  3. linux线程

在某处写到 linuxThreads 现在被放弃了。但是我找不到当前对 NPTL 和 kthread 的支持。此外,我找不到任何可以简单解释我如何使用其功能的来源。

哪个是当前支持和使用内核级线程的好库?

还请分享安装这些库并使用它们的任何资源?

linux kernel pthreads nptl linux-kernel

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

标签 统计

linux ×6

nptl ×6

pthreads ×4

multithreading ×3

c ×1

cmd ×1

debugging ×1

gcc ×1

java ×1

kernel ×1

linux-kernel ×1

nio ×1

posix ×1