什么是Python的“内置方法获取”?我怎样才能加快速度?

时间:2009-02-09 21:41:59

标签: python optimization profiling performance

我正在编写一个包含大量文件访问权限的Python程序。它的运行速度非常慢,所以我使用cProfile来找出花费时间的东西。

似乎有一些很多花费在Python报告为“{内置方法获取}”的时间。我不知道这个方法是什么。它是什么,我怎样才能加快我的计划?

3 个答案:

答案 0 :(得分:5)

没有看到你的代码,很难猜到。但我想我会说它是threading.Lock.acquire方法。你的部分代码试图获得一个线程锁,它一直等到它获得它。

可能有简单的方法来修复它

  • 重建文件访问权限,
  • 没有锁定,
  • 使用blocking = False,
  • 甚至根本不使用线程。

但是,再一次,没有看到你的代码,就很难猜到。

答案 1 :(得分:0)

使用线程进行IO是一个坏主意。线程不会让你的程序更快地等待。通过使用异步I / O和事件循环,您可以获得更好的结果;发布有关您的程序的更多信息,以及您使用线程的原因。

答案 2 :(得分:0)

你想要寻找使用过的cpu,而不是寻找那个方法中的“总使用时间” - 这可能有所帮助。对不起我不使用python,但这就是我在红宝石中的表现:) -r