ユーザーがSMSを受信する必要があるイベントに基づいて、システム内でモジュールを開発しています。
次のような状況があります
synchronized(notificationPhoneNumber)
{
SmsProvider.sendSms(notificationPhoneNumber, smsText);
}
メソッド sendSms のコードは非同期で実行されています。
public static void send(final NotificationPhoneNumber npn, final String smsText)
{
Thread smsSender = new Thread(new Runnable()
{
public void run()
{
//sms sending code runs here....
}
});
smsSender.start();
}
問題は、この場合、notificationPhoneNumber オブジェクトがロックされる期間はどれくらいかということです。スレッドがジョブを終了するまでにロックされるかどうか。