У меня есть этот простой тест:
import java.util.Timer;
import java.util.TimerTask;
public class ScheduleTest {
private static long last;
public static void main(String[] args) {
last = System.currentTimeMillis();
Timer timer = new Timer();
timer.schedule(new TimerTask() {
@Override
public void run() {
Long current = System.currentTimeMillis();
System.out.println(current - last);
last = current;
}
}, 0, 1000);
}
}
, который дает мне ожидаемый результат:
0
1000
1000
1000
Если я заменяю Timer на SchedureThreadPool, это дает мне странный результат:
import java.util.concurrent.Executors;
import java.util.concurrent.ScheduledExecutorService;
import java.util.concurrent.TimeUnit;
public class ScheduleTest {
private static long last;
public static void main(String[] args) {
last = System.currentTimeMillis();
ScheduledExecutorService scheduledThreadPool = Executors.newScheduledThreadPool(1);
last = System.currentTimeMillis();
scheduledThreadPool.scheduleAtFixedRate(new Runnable() {
@Override
public void run() {
Long current = System.currentTimeMillis();
System.out.println(current - last);
last = current;
}
}, 0, 1000, TimeUnit.MILLISECONDS);
}
}
Результат:
0 2359 2079 2312 1844 2266
Ожидание?
-121--1696302-Есть ли способ отправить электронное письмо от C # без ручного кодирования моего имени пользователя и пароля с помощью Gmail SMTP?
Я знаю, что есть программное обеспечение, которое может видеть исходный код, и мне не очень нравится видеть мой пароль Gmail.