Questions tagged «singleton»

一种设计模式,可确保确实存在特定类的一个应用程序范围的实例。四人制的创新设计模式之一。

10
C#静态构造函数线程安全吗?
换句话说,此Singleton实现线程是否安全: public class Singleton { private static Singleton instance; private Singleton() { } static Singleton() { instance = new Singleton(); } public static Singleton Instance { get { return instance; } } }

2
Jon Skeet对Singleton的澄清
public sealed class Singleton { Singleton() {} public static Singleton Instance { get { return Nested.instance; } } class Nested { // Explicit static constructor to tell C# compiler // not to mark type as beforefieldinit static Nested() {} internal static readonly Singleton instance = new Singleton(); } } 我希望在当前的C#应用​​程序中实现Jon …






20
Java中带有参数的Singleton
我正在阅读Wikipedia上的Singleton文章,并且遇到了以下示例: public class Singleton { // Private constructor prevents instantiation from other classes private Singleton() {} /** * SingletonHolder is loaded on the first execution of Singleton.getInstance() * or the first access to SingletonHolder.INSTANCE, not before. */ private static class SingletonHolder { private static final Singleton INSTANCE = new Singleton(); …

11
是否存在用PHP访问数据库的单例的用例?
我通过PDO访问我的MySQL数据库。我正在设置对数据库的访问权限,而我的第一个尝试是使用以下内容: 我想到的第一件事是global: $db = new PDO('mysql:host=127.0.0.1;dbname=toto', 'root', 'pwd'); function some_function() { global $db; $db->query('...'); } 这被认为是不好的做法。稍作搜索后,我得到了Singleton模式,该模式 “适用于需要一个类的单个实例的情况。” 根据手册中的示例,我们应该这样做: class Database { private static $instance, $db; private function __construct(){} static function singleton() { if(!isset(self::$instance)) self::$instance = new __CLASS__; return self:$instance; } function get() { if(!isset(self::$db)) self::$db = new PDO('mysql:host=127.0.0.1;dbname=toto', 'user', 'pwd') …


10
Java序列化:readObject()与readResolve()
《有效的Java》和其他资源这本书对在处理可序列化Java类时如何以及何时使用readObject()方法提供了很好的解释。另一方面,readResolve()方法仍然是一个谜。基本上,我发现的所有文档都只提到了两者之一,或者只单独提到了两者。 仍未解决的问题是: 两种方法有什么区别? 什么时候应该实施哪种方法? 应该如何使用readResolve(),尤其是在返回什么方面? 希望您能对此事有所了解。

8
Java Singleton和同步
请阐明有关单例和多线程的查询: 在多线程环境中用Java实现Singleton的最佳方法是什么? 当多个线程尝试同时访问getInstance() 方法时会发生什么? 我们可以做单身的吗 getInstance() synchronized吗? 使用Singleton类时,真的需要同步吗?

13
Singleton的替代品是什么
我们有一个类,其中包含应用程序的配置信息。它曾经是一个单身人士。经过一些体系结构审查后,我们被告知删除单例。我们确实看到了在单元测试中不使用单例的一些好处,因为我们可以同时测试不同的配置。 没有单例,我们必须在代码中的所有地方传递实例。变得如此混乱,所以我们写了一个单例包装器。现在,我们正在将相同的代码移植到PHP和.NET,我想知道是否可以为配置对象使用更好的模式。

9
Node.js中的Singleton模式-是否需要?
最近,我碰上了这篇文章如何写在Node.js的一个单 我知道require 状态文档: 第一次加载模块后将对其进行缓存。多次调用require('foo')可能不会导致模块代码多次执行。 因此,似乎每个所需的模块都可以轻松地用作单例,而无需单例样板代码。 题: 上面的文章是否提供了有关创建单例的解决方案?


By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.