如何在php中暂停执行,保存状态并在以后从同一点继续?

时间:2013-12-24 05:21:49

标签: php session persistence thread-sleep savestate

我有一个php程序可以进行一些处理。我想在执行期间停止程序并保存当前执行状态,并在稍后继续。实现这一目标的最佳方法是什么?

修改

例如我的场景是这样的:

<?php
.........
foreach($items as $item)
{
    .........

    // Stop execution from here during 4th looping and save this execution state
    // and continue after some time from here it self as the 4th loop execution

    .........
}
.........
?>

我知道我可以通过暂停执行过程来实现我的要求。但是在睡眠过程中,工作集仍然需要物理内存和/或页面文件来支持该过程。换句话说,PHP解释器进程需要继续运行。我想避免这个。这就是为什么我正在寻找一种替代方法,如保存整个执行状态,并在一段时间后通过从内存加载保存的执行状态继续。 这可以与一段时间的过程休眠进行比较。

1 个答案:

答案 0 :(得分:0)

我不确定你是否很好地构建了你的目标。但是,这可能是我的无知。但是,在我看来,线程可能是您问题的解决方案。显然,现在可以在php中使用线程。我会向您提供更多信息,但我没有亲身体验我将要推荐的API。我只是出于诚实而这样说,因为我不是百分之百,这将解决你的问题。但是,如果您添加了线程,您将能够同时执行操作,而不必担心序列化变量或睡眠程序。希望这会有所帮助。

ptthreads project