时间旅行python调试器

timetravelpdb的Python项目详细描述


time travel pdb
==


增强了python调试器的时间回溯能力。



这个版本的pdb增加了一种能力,可以像以前那样及时地跳回程序的状态。你可以检查变量,甚至从那一点开始继续执行(尽管那是危险的,因为它可能损害时空连续性。)


它是如何工作的:

每一刻都是另一个宇宙。很差劲,嗯?

ttpdb只需在显示输入提示之前记录指向当前世界的指针。当你一步一步地完成你的程序时,每一步都会记录一个指向过去宇宙的指针。最后100个指针被记住了。你可以跳进任何一个宇宙。一旦进入这些宇宙,你就可以检查变量。见鬼,你可以做任何你想做的事情,因为你真的在那个宇宙中。


一旦你完成了那个宇宙,你就可以“弹出”回到你离开的宇宙,这要感谢我们的时间门户技术。

q:当我在另一个宇宙中时,我可以运行代码吗?A:是的。但是,如果
修改python进程之外的任何内容,则
有可能在时空连续体中创建一个洞并破坏宇宙。

q:在另一个宇宙中,我可以使用“记录宇宙”功能吗?
a:当然!事实上,在那些过去的宇宙中,有一个“ulist”来观察到目前为止所记录的宇宙。您会注意到列表中
的项目较少。那是因为当你在那一刻,其他人还没有被记录下来。单步执行这个程序现在将成为历史的一个新分支。你可以在这些宇宙之间跳跃,跳回到你的出生地,等等。这可能有点让人困惑,但是,见鬼,时间旅行总是如此。

q:你为什么在愚人节发布这个?A:当时看来是个好主意。


Q:这是为了推广你的《系统管理员时间管理》
一书吗?A:这个?http://everythingsysadmin.com/books.html不,不在
all。我的下一本书要到2014年10月才能出版:
云管理的实践。
http://everythingsysadmin.com/2014/03/sneak-preview.html哦,它当然不是在宣传我的RFC愚人节书:http://rfchumor.com/

q:你真的是在时光倒流吗?A:不,每个人都知道不可能真正回到过去。过去的一切都是我们的回忆。它所做的是使用unix内核的一个特性,这个特性自20世纪70年代以来就一直存在,用来记录进程的所有内容的快照,并在这些内存之间跳转。这个特性被大多数unix用户误解了。

如果我们可以的话就好了。但我们做不到。
相反,我们有我们的旧记忆,这必须足够好。而且,
说实话,我们中的大多数人需要的不仅仅是及时返回的能力,更需要的是能够放下过去。




欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java为什么我不能从ObjectInputStream读取ArrayList?   linux如何设置java时区?   java是一种拥有系统的方法。出来在循环中打印不同的内容?   scala Apache Spark:在Java中有效地使用mapPartitions   java Maven对com的依赖性。白天利用率   java将多个数据映射到单个id的表的正式名称是什么?   java如何在Android应用程序中隐藏FulterWave API键   SeleniumWebDriverJava:如何使用行号和列号单击表中的特定单元格   java Springbatch将数据从写入程序或处理器传递到RestConroller   java在Android TextView中一次换行两行,并带有跨距   java如何使这个rxjava zip并行运行?   JAVAutil。登录中。记录器不尊重java。util。登录中。数量   java无法将参数发布到服务器   java Eclipse:在自定义透视图/视图的状态行上显示作业进度   java在调用findAll()时,找到了多个具有给定标识符的行,但如果我使用findById()遍历所有条目,则可以工作;   Java中的正则表达式问题   Java中的实例变量   java如何在安卓中逐字搜索   java如何计算百分比