C# C“如何实施”;“单身人士”;方法
我们都知道单身模式 如何实现单例“方法”?-只调用一次而任何其他调用都不起作用的方法C# C“如何实施”;“单身人士”;方法,c#,singleton,C#,Singleton,我们都知道单身模式 如何实现单例“方法”?-只调用一次而任何其他调用都不起作用的方法 我可以考虑几种方法(包括Lazy-if(!.IsValueCreated){…value.method();}),但是您将如何实现它呢?我不这么认为有类似于单例方法的东西 如果您希望您的方法只执行代码块一次,那么您可以这样做。这可以通过几种方式实现,其中一种方式如下: public class Foo { private static bool _isInitialied;
我可以考虑几种方法(包括Lazy-if(!.IsValueCreated){…value.method();}),但是您将如何实现它呢?我不这么认为有类似于单例方法的东西 如果您希望您的方法只执行代码块一次,那么您可以这样做。这可以通过几种方式实现,其中一种方式如下:
public class Foo
{
private static bool _isInitialied;
public void Initialize()
{
if(_isInitialied)
return;
//TODO: Initialization stups.
_isInitialied = true;
}
}
您可以通过以下操作实现这一点:
public class Test
{
private Action _action;
private void DoSomething()
{
// Do something interesting
_action = DoNothing;
}
private void DoNothing()
{
}
public Test()
{
_action = DoSomething;
}
public void Call()
{
_action();
}
} // eo class Test
-1我不明白你的问题是什么。检查该方法中的某个
特定值是否相等,并且仅在该特定值
的情况下进行工作,完成工作后,在该方法中将其设置为另一个值
,并确保该值不会再次重置为特定值
,否则让我们假设该方法来自无法控制但不得再次调用的外部API:)您可以始终将该外部API方法
包装到您的拥有,这样你才能重新获得控制;)@格泽尼奥是真的,但从来没有人声称是真的,事实并非如此。我只是想看看人们能想出什么解决办法:)