Какой из следующих двух я должен использовать, чтобы убедиться, что все курсоры закрыты?
Cursor c = getCursor();
if(c!=null && c.getCount()>0){
try{
// read values from cursor
}catch(..){}
finally{
c.close();
}
}//end if
OR
Cursor c = getCursor();
try{
if(c!=null && c.getCount()>0){
// read values from cursor
}//end if
}catch(..){
}finally{
c.close();
}
РЕДАКТИРОВАТЬ:
Несколько вопросов:
1Нужно ли вызывать close () для курсора со счетчиком 0?
2. Поскольку в этом случае для первой идиомы close () никогда не будет вызываться.Предполагается, что для курсора, не имеющего элементов, курсор никогда не будет открыт.Это правильное предположение?
Пожалуйста, сообщите.