我有一个方法Modify()如下所示
// Convert SortedList of objects
if (retval) //
{
// Release the database lock
Debug.Verbose(func, "Unloc");
我想要实现的功能是如果标志RuntimeUp为true而m_reconnectInProgress为false意味着是否(RuntimeUp&&!m_reconnectInProgress)我必须在Modify()方法中执行整个过程,否则我需要将'retval'返回为false。我们将从ClientModify(col)方法返回,由其他方处理
如果我检查是否(RuntimeUp&&!m_reconnectInProgress)在最开始和最低端 其他部分返回retval = false就足够了,还是有其他方便的方法可以避免错误的逻辑
我基于此评论获得了上述假设“”如果RuntimeUp == false且m_reconnectInProgress == true,则无需创建修改对象列表[col.Add(dmo);]。您可以在Modify方法的顶部返回false,这意味着您可以在Modify方法的开头执行这些检查,而不是等到调用ClientModify “”
答案 0 :(得分:0)
如果我理解正确,我只需添加行
if(!RuntimeUp || m_reconnectInProgress)
return false;
在方法的最顶层,我认为这是一种完全可以接受的方法,可以避免在应用程序运行正常的状态下运行该方法。
但是,你问题的评论位没有提到它应该检查正在进行的重新连接,所以我不确定你是否应该这样做?