在调试经典ASP应用程序时(同时学习经典ASP)我遇到了以下内容
Application("Something") = "some value"
和代码中的其他地方因此使用了这个值:
someObj.Property = Session("Something")
Application
对象与Session
的关系如何?
答案 0 :(得分:4)
Session
变量已链接到用户。所有用户之间共享Application
变量。
Application
是一个方便的保险库,用于存储您想要保留的内容,但您不能保证它们会永远存在。所以想想低端缓存,短期变量存储等等。
在这个带有这些定义的上下文中,除了获取和设置变量与每个变量大致相同之外,它们几乎没有相互关联。
注意:使用Application
时可能会出现并发问题(因为您可能很容易让多个用户点击读取或写入内容的内容),所以建议您使用{{ 1}}在你写完之前{}}} {}}}这只适用于写作。
注2:我不确定它是否在请求完成后自动解锁(这是明智的)但我不相信它。确保应用程序中可能出现爆炸的任何部分都不在锁定之内,否则您可能会面临锁定其他用户的情况。
注意3:同样,不要把需要花费很长时间的东西放在锁内,只需要写入数据的位。如果您在锁定时执行需要10秒钟的操作,则会锁定所有其他人。