问题标签 [lifetime]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
1286 浏览

php - 通过 id 检查会话是否存在,而不更新会话的生命周期

我在 RIA 工作。我们使用 Memcached 来存储会话,我已经安装了http://pecl.php.net/package/memcache,我的 PHP 会话处理程序如下所示:

会话超时设置为 30 分钟。在我的 RIA 中,我想通过 AJAX 定期调用服务器端脚本来检查访问者的会话是否仍然存在。如果 ajax 调用返回 false,我会关闭屏幕并显示一个漂亮的 relogbox 以继续会话。

现在问题出在服务器端脚本上。如果会话存在,我需要确定会话是否存在而不延长会话的生命周期。

我对会话处理程序的工作方式并不完全了解,但我很确定我是否会这样做:

我很确定这会更新会话的生命周期(在服务器端,但也在客户端通过将新的 cookie 发送回客户端)。并且会话将无限存在。

我考虑过的一些选项,但被排除在外:

  • 不要进行任何服务器端调用,而是在客户端上使用 javascript 计时器(例如 30 分钟后到期)。当用户在多个窗口中打开 RIA 时,这将不起作用
  • 尝试破解 session_start() 以防止它向客户端发送新的新鲜 cookie。这可能适用于客户端,但到期时间仍将在内部 session_handling 处刷新。

我想要一些想法,蒂亚

0 投票
2 回答
2407 浏览

asp.net - ASP.NET 中的应用程序生命周期

这应该是一个简单的问题,但我没有设法在谷歌上找到答案。

我想知道,用白痴可以理解的术语来说,应用程序生命周期在 ASP.NET 中的确切含义(因此您可以预期应用程序启动和结束事件何时运行)。

我认为它会是当您在 IIS 中运行和停止应用程序时,但我读过一些内容表明它与请求数有关。

0 投票
1 回答
1407 浏览

c# - Unity:将参数传递给自定义生命周期构造函数,在 xml 配置文件中

我这样写了我的 CustomLifetimeManager:

现在,以编程方式配置容器很容易,但是如何将它添加到配置文件中,如下所示?

0 投票
2 回答
188 浏览

c++ - C++基本指针问题

我有一些共享指针shared_ptr<T> pointer1(new T(1));

现在,在代码的其他部分,我有一个明确的副本pointer2(猜想它会存储在一个std::map或其他容器中)。假设复制是这样完成的map.insert(make_pair(key1, pointer1));

我使用第二个副本只是为了预缓存一些数据,这意味着如果主指针已经无效,则不需要存储第二个指针。在这种情况下我该怎么办?

如果我知道第二个指针在pointer1我的代码的其他部分无效,有什么方法可以强制释放第二个指针的内存?

或者我应该采取丑陋的方式 - 不时检查我的地图是否有指针ptr.unique()设置true并破坏它们?

也许有一些替代方案/建议?


编辑 - 纯代码示例

有什么方法/技巧可以让地图包含<0, shared_ptr[NULL]>而不是<0, shared_ptr[5]>在这些操作发生之后?

谢谢

0 投票
2 回答
930 浏览

c++ - 函数中局部变量的生命周期是否一定等于该函数执行的生命周期?

可能重复:
优化的 c++ 编译器如何重用函数的堆栈槽?

c++ 编译器是否有方法来确定函数中每个局部变量的生命周期结束的时间,以便它们使用堆栈内存进行优化,或者他们只是将其等同于函数执行的生命周期?

0 投票
0 回答
260 浏览

php - PHP - 销毁会话

可能重复:
如何在 30 分钟后使 PHP 会话过期?

大家好,

我遇到的问题是我的主机不允许我覆盖 PHP.ini 设置。他们目前将会话的最大生命周期设置为 24 分钟(荒谬)。

我的想法是完全销毁会话,然后重新创建它(最好给它一个新的生命周期——对吧?)。

我该怎么办?

注意: session_destroy 仅删除数据,不会破坏实际会话。

我也试过(主机不允许覆盖设置)

0 投票
2 回答
10140 浏览

php - 使用 Zend_Auth 设置和延长会话生命周期

我将 Zend_Auth 用于我的一个项目,但到目前为止还没有弄清楚如何设置会话的生命周期或如何延长它(假设它应该运行 5 分钟,并且应该在用户进行操作时重置为),这是我的初始化代码:

蚂蚁这是我检查用户是否登录的方式:

它可能就在我面前,但我就是想不通,帮助?请?漂亮吗?:D

0 投票
4 回答
913 浏览

vb.net - VB.Net 集合中对象的生命周期

我试图在以下代码中找出 tmpTabPages 的生命周期。让我们假设表单有一个名为 MyTabControl 的空 TabControl,即有一个名为 NameCollection 的字符串集合。

由于 tmpTabPage 的范围是 For/Next 块,通常它的生命周期会一直到块结束,对吧?但是,由于它被添加到具有块之外范围的集合中,它是否获得与集合相同的生命周期,或者在这种情况下是 MyTabControl?最后,如果我调用 MyTabControl.TabPages.Clear 集合中的 tmpTabPages 是否会被销毁,或者它们会坐在那里占用内存?

0 投票
2 回答
3528 浏览

c++ - 临时工的寿命

以下代码工作正常,但为什么这是正确的代码?为什么 foo() 返回的临时的“c_str()”指针有效?我想,当输入 bar() 时,这个临时文件已经被破坏了——但它似乎不是这样的。所以,现在我假设 foo() 返回的临时值将在调用 bar() 后被销毁 - 这是正确的吗?为什么?

0 投票
1 回答
1211 浏览

memcached - 如何在不获取 Memcached 项目的情况下延长它的生命周期?

我可以在不实际获取 Memcached 项目的情况下延长其生命周期吗?

当然,我可以得到该项目,再次设置它并增加寿命。但是,这样我必须先将对象复制到脚本的内存中,这从性能的角度来看并不好。