首页 \ 问答 \ 你好,关于pdfbox解析pdf文件内存溢出的问题你是怎么解决的?请教了~!

你好,关于pdfbox解析pdf文件内存溢出的问题你是怎么解决的?请教了~!

更新时间:2022-04-30 15:04

最满意答案

一般一个cpu核心可以搭载两个线程,你根据核心去搭载线程,不要乱放线程。
  还有你有10个线程同时跑耗时操作最少也要4核的cpu,你可以减少线程或者减少线程中的耗时操作。
  如果你是解码或者压缩程序的话那么cpu100%也很正常,如果是socket网络连接你可以看看windows iocp,linux epoll的实现。

其他回答

多线程的cpu利用率不是系统说的算得,还得看应用程序开发者怎么做

相关问答

更多
  • 一般一个cpu核心可以搭载两个线程,你根据核心去搭载线程,不要乱放线程。   还有你有10个线程同时跑耗时操作最少也要4核的cpu,你可以减少线程或者减少线程中的耗时操作。   如果你是解码或者压缩程序的话那么cpu100%也很正常,如果是socket网络连接你可以看看windows iocp,linux epoll的实现。
  • 如果您想要一致的CPU性能,则应避免使用突发性能实例(T2系列)。 所有其他实例系列(M5,C5等)将随着时间的推移具有一致的CPU性能。 您可以将任何实例系列与Elastic Beanstalk一起使用。 无需专用主机。 If you want consistent CPU performance, you should avoid the burstable performance instances (the T2 family). All other families of instances (M ...
  • CPU可以根据自己的选择自由划分不同内核之间的线程。 有一些本机库允许您设置线程亲和性,例如我们自己的Peter Lawrey的库 。 The CPU is free to divide the threads among different cores as it chooses. There are native libraries that allow you to set the thread affinity, for example our own Peter Lawrey's library. ...
  • 不建议您在美国地区和欧洲数据库中使用应用程序。 这些是您将遇到的一些事情: 1)高延迟,因为对数据的查询将不得不往返欧洲才能得到这个。 2)更高的资源利用率,因为一般来说每个访问数据库的请求都需要更长的时间,这会增加内存使用量,而请求在等待数据时也会对应用程序造成更严重的负载影响。 3)跨区域数据出口,每次有查询时,您需要支付从欧洲到我们的所有数据。 更好的解决方案是执行以下操作: 1)在我们的区域中设置新的数据库并挂接活动的地理复制 此时,您将具有热/冷配置,其中任何实例都可用于从DB读取数据,但只有主实 ...
  • 你是正确的使用循环,但是: 你有IO 你睡了一觉 基本上,与其睡眠或等待IO的时间相比,该循环中的任何内容都不会花费太多的CPU时间。 要杀死一个CPU,你需要给它CPU的东西。 唯一棘手的问题确实是确保C ++编译器不会优化循环。 像这样的东西应该可以没问题: // A bit like generating a hashcode. Pretty arbitrary choice, // but simple code which would be hard for the compiler to // ...
  • 是的,考虑到相同的工作量,在较低频率的CPU上运行会导致更高的利用率,因为CPU必须在非空闲状态下花费更长的时间来完成工作。 在具有多个核心的系统中解释这一点非常复杂,可能会以不同的速率进行限制,并且某些核心可能处于活动状态而其他核心处于空闲状态,但这是一般原则。 正如您所指出的,这是CPU利用率仅是工作负载CPU强度的近似度量的一个原因。 其他原因包括缓存,上下文切换,共享资源竞争等的影响。 Yes, given the same amount of work, running on a CPU at a ...
  • 管道top到awk并添加CPU利用率列: top -b -n 1 -u username | awk 'NR>7 { sum += $9; } END { print sum; }' awk命令说“对于大于第7行的行(从顶部开始),将字段9 $9的数字加起来并将其存储在变量sum 。一旦你完成了管道top命令中的所有行,就打印出值在变量sum “。 如果-u标志在您的系统上不起作用,您只需坚持使用NR>7条件的用户名搜索: top -b -n 1 | awk 'NR>7 && $2=="root" { ...
  • 是的,我建议100%是颠簸,所以不希望看到进程一直在运行。 我总是瞄准80%,以便在峰值/临时过程的利用率和空间之间取得平衡。 我过去使用的一种方法是慢慢地调整池的大小,并测量其影响(包括CPU和IO等其他约束条件),你永远不知道,你可能会发现IO突然成为瓶颈。 Yep, I'd suggest 100% is thrashing so wouldn't want to see processes running like that all the time. I've always aimed for 8 ...
  • 如果您的计算机具有多核架构(很可能),那么获得大量使用的唯一方法就是使用多个线程。 例如,如果您的计算机是四核,如果您使用单个线程,则只能使用25%的CPU。 通过使用多个线程(通过显式多线程代码或通过诸如Parallel.For之类的东西),你将获得接近100%的东西,但不完全是 - 总是存在使程序无法实现完全使用的开销。 算法的性质(即它的并行性如何)也会产生很大的不同。 像光线追踪这样的东西令人尴尬地平行,而且开销也很危险。 If your computer has a multicore archi ...
  • BlockingQueue的整个目的是它在空时阻塞。 因此,消费者线程(填充到Cassandra中的线程)不必手动检查它们是否为空。 您可以只调用take(),如果队列为空,则调用将被阻塞,除非它被中断或者有可用的元素。 当一个线程被阻塞时,调度程序可以在其位置安排一些其他线程,这样可以避免调用yield()等等。 请记住,仅当优先级大于或等于正在产生的线程可用于运行的线程时,yield()才会让位给另一个线程。 public void run(){ LOGGER.log(Level.INFO, " ...

相关文章

更多

最新问答

更多
  • 您如何使用git diff文件,并将其应用于同一存储库的副本的本地分支?(How do you take a git diff file, and apply it to a local branch that is a copy of the same repository?)
  • 将长浮点值剪切为2个小数点并复制到字符数组(Cut Long Float Value to 2 decimal points and copy to Character Array)
  • OctoberCMS侧边栏不呈现(OctoberCMS Sidebar not rendering)
  • 页面加载后对象是否有资格进行垃圾回收?(Are objects eligible for garbage collection after the page loads?)
  • codeigniter中的语言不能按预期工作(language in codeigniter doesn' t work as expected)
  • 在计算机拍照在哪里进入
  • 使用cin.get()从c ++中的输入流中丢弃不需要的字符(Using cin.get() to discard unwanted characters from the input stream in c++)
  • No for循环将在for循环中运行。(No for loop will run inside for loop. Testing for primes)
  • 单页应用程序:页面重新加载(Single Page Application: page reload)
  • 在循环中选择具有相似模式的列名称(Selecting Column Name With Similar Pattern in a Loop)
  • System.StackOverflow错误(System.StackOverflow error)
  • KnockoutJS未在嵌套模板上应用beforeRemove和afterAdd(KnockoutJS not applying beforeRemove and afterAdd on nested templates)
  • 散列包括方法和/或嵌套属性(Hash include methods and/or nested attributes)
  • android - 如何避免使用Samsung RFS文件系统延迟/冻结?(android - how to avoid lag/freezes with Samsung RFS filesystem?)
  • TensorFlow:基于索引列表创建新张量(TensorFlow: Create a new tensor based on list of indices)
  • 企业安全培训的各项内容
  • 错误:RPC失败;(error: RPC failed; curl transfer closed with outstanding read data remaining)
  • C#类名中允许哪些字符?(What characters are allowed in C# class name?)
  • NumPy:将int64值存储在np.array中并使用dtype float64并将其转换回整数是否安全?(NumPy: Is it safe to store an int64 value in an np.array with dtype float64 and later convert it back to integer?)
  • 注销后如何隐藏导航portlet?(How to hide navigation portlet after logout?)
  • 将多个行和可变行移动到列(moving multiple and variable rows to columns)
  • 提交表单时忽略基础href,而不使用Javascript(ignore base href when submitting form, without using Javascript)
  • 对setOnInfoWindowClickListener的意图(Intent on setOnInfoWindowClickListener)
  • Angular $资源不会改变方法(Angular $resource doesn't change method)
  • 在Angular 5中不是一个函数(is not a function in Angular 5)
  • 如何配置Composite C1以将.m和桌面作为同一站点提供服务(How to configure Composite C1 to serve .m and desktop as the same site)
  • 不适用:悬停在悬停时:在元素之前[复制](Don't apply :hover when hovering on :before element [duplicate])
  • 常见的python rpc和cli接口(Common python rpc and cli interface)
  • Mysql DB单个字段匹配多个其他字段(Mysql DB single field matching to multiple other fields)
  • 产品页面上的Magento Up出售对齐问题(Magento Up sell alignment issue on the products page)