如何在File outputFile = new File(System.getProperty("user.home"),"output.pdf");
PdfDocument pdfDocument = new PdfDocument(new PdfWriter(outputFile));
Document layoutDocument = new Document(pdfDocument);
if(some_condition)
{
layoutDocument.add(new Paragraph("Lorem Ipsum Dolor Sit Amet"));
}
layoutDocument.add(new Paragraph("Never gonna give you up. Never gonna let you down."));
应用程序中获取当前数量的开放光纤?我的应用程序使用EventMachine Synchrony lib进行并发处理。谷歌搜索时,我没有找到任何可以返回它的API。
例如,如果我有这段代码:
ruby
然后我怎么知道有多少纤维在运行?无需手动使用EM::Synchrony::FiberIterator.new(@outputs, @outputs.size).each do |output|
# some code goes here
end
,当然也不使用counter++
。
答案 0 :(得分:1)
好的,因此找到了解决此问题的解决方案:
您可以计算ruby中现有对象(所有类型)的数量。
在我们的例子中,我们想要计算类型/类' Fiber' 的对象,因此我们使用ObjectSpace.each_object
ruby API:
stats = {}
stats["Fiber"] = 0
ObjectSpace.each_object(Fiber) {|o| stats["Fiber"] += 1 if o.alive?}
(我们只对活纤维感兴趣,这就是使用alive?
API的原因)
ObjectSpace供参考: https://ruby-doc.org/core-1.9.3/ObjectSpace.html