当前位置:  开发笔记 > 运维 > 正文

我何时应该使用范围锁定(应用程序,服务器等)与ColdFusion中的命名锁定?

如何解决《我何时应该使用范围锁定(应用程序,服务器等)与ColdFusion中的命名锁定?》经验,为你挑选了1个好方法。

什么时候适合使用或者它与相反?

具体来说,我对使用CFLock保护应用程序,会话或服务器范围中的共享对象感兴趣,但我也有兴趣了解ColdFusion中锁定的不同用法.



1> Nathan Strut..:

您应该在阅读和编写可能在应用程序范围内发生变化的事物时使用.例如:


    select * from myTable

你想要用type ="exclusive"来锁定它.无论在何处使用application.myData,您都需要一个type ="readonly"锁.Application.cfc的OnApplicationStart方法是个例外,它自动锁定.同样,对会话和服务器范围使用相同的策略.

命名锁可以让您更好地控制锁定策略.需要动态锁定命令时,请使用命名的cflock.例如:


    

在此示例中,允许不同类型的用户同时写入文件,但具有相同session.user_type的用户必须彼此等待.此cflock有助于避免文件争用问题.

使用命名锁定的另一个原因是您不知道当前操作的范围.如果您在实例化的cfc中,您如何知道实例化的范围?变量?会议?应用?好的封装告诉我们,对象除了被告知之外什么都不知道.在CFC内部,使用命名锁并在CFC之后命名它,或者根据您的用例将CFC和唯一实例变量命名.

推荐阅读
k78283381
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有