我有两个C#方法RegisterTasks()和WaitForAll(),并且每当调用RegisterTasks()时,WaitForAll()也必须在同一个代码块中调用。想知道是否有办法告诉C#编译器确保WaitForAll()总是与RegisterTasks()一起出现,否则会给出编译错误? 谢谢〜如何强制2个C#方法在编译时总是一起出现?
0
A
回答
5
0
不需要。您需要正确记录合同并相信最终用户正确使用这些方法。
2
简短的回答,正如其他人所说的,不是。
我认为这些方法是分开的,因为调用者可能希望在它们之间执行其他代码。您可能希望考虑创建一个将委托作为参数的组合方法,然后在需要时调用该委托。
0
不,但你可以做一些设计。例如:
public void RegisterTasks(){
// do something
WaitForAll();
}
或者
public void RegisterTasks(){
// do something
privateWaitForAll();
}
public void WaitForAll(){
// do something
privateWaitForAll();
}
private void privateWaitForAll(){
// do something
}
相关问题
- 1. 如何编译一个依赖失败时强制退出?
- 2. Borland C++编译总是失败,出现“无法加载:tlink.exe”
- 3. 如何总是编译一个文件?
- 4. C# - 如何“强制退出”一法
- 5. 如何强制div出现在另一个div下方
- 6. 如何在每次编译时强制编译资源?
- 7. C#:如何强制不同的编组时调用一个方法?
- 8. 如何强制野牛即时编译
- 9. 使用jni.h编译C++中的java方法时出现错误
- 10. 强制编译时constexpr
- 11. 挂钩编译器/钩上一个方法的输出(C# - C++)
- 12. 如何在elisp中强制字节编译一个目录
- 13. 汇编ARM强制布尔方法总是返回TRUE
- 14. 如何强制子类实现一个方法
- 15. 任何方式强制jidetabbedpane总是显示第一个标签
- 16. 在另一种过时的方法中使用过时方法时强制编译错误
- 17. 编译文件时出现C++错误
- 18. 编译时出现C++错误
- 19. 编译时出现C++语义错误
- 20. 在C:编译时出错
- 21. 在编译VS2008上的RAPID库时出现编译时出错
- 22. 在XSLT中使用format-date()方法时出现编译错误
- 23. 如何调用一个方法在C#每2小时
- 24. Closure编译器并不总是强制类型安全?
- 25. Scala - 在编译时强制实现向量的大小
- 26. WAI-ARIA HTML。如何强制2个div被读出为一个?
- 27. 如何在C++中强制编译错误?
- 28. 编译器如何在C++中执行强制转换操作?
- 29. Cmake:如何仅在存在时强制编译器?
- 30. 在C#中,如何限制谁可以在编译时调用方法
一句话,没有。您必须遵循Igor或Jason建议的解决方法。这不是编译器可以帮助你的问题,它是* design *之一,并使你的API易于使用。 – 2013-03-22 04:00:20