Cell Değerlerini Birden Çok Konuda Aynı Anda Okumak
Aynı anda birden fazla iş parçacığındaki hücre değerlerini okumak için,Worksheet.getCells().setMultiThreadReading() iledoğruBunu yapmazsanız, yanlış hücre değerleri alabilirsiniz. Hücre değerlerini biçimlendirme gibi bazı özelliklerin birden çok iş parçacığı için desteklenmediğini lütfen unutmayın. Yani MultiThreadReading, yalnızca hücrenin yalnızca orijinal verilerine erişmenizi sağlar. Çoklu iş parçacığı ortamında, sayısal değerler için Cell.getStringValue() gibi hücrenin biçimlendirilmiş değerini almaya çalışırsanız, beklenmeyen bir sonuç veya istisna alabilirsiniz.
Aşağıdaki kod:
- Bir çalışma kitabı oluşturur.
- Bir çalışma sayfası ekler.
- Çalışma sayfasını dize değerleriyle doldurur.
- Daha sonra rastgele hücrelerden değerleri aynı anda okuyan iki iş parçacığı oluşturur. Okunan değerler doğruysa hiçbir şey olmaz. Okunan değerler yanlışsa bir mesaj görüntülenir.
Bu satırı yorumlarsanız:
testWorkbook.getWorksheets().get(0).getCells().setMultiThreadReading(true);
ardından aşağıdaki mesaj görüntülenir:
if (s.equals("R" + row + "C" + col)!=true)
{
System.out.println("This message box will show up when cells read values are incorrect.");
}
Aksi takdirde program herhangi bir mesaj göstermeden çalışır, bu da hücrelerden okunan tüm değerlerin doğru olduğu anlamına gelir.