Я пытаюсь сделать немного асинхронного программирования, но мои навыки Java немного устарели ...
Вот мой код:
private static String uname="xxx";
private static String pword="xxx";
private static int productId=82;
private static String sessionToken="";
public static void main(String[] args)
{
BFGlobalService_Service service=new BFGlobalService_Service();
BFGlobalService betfair=service.getBFGlobalService();
System.out.println("hello");
LoginReq loginReq=new LoginReq();
loginReq.setUsername(uname);
loginReq.setPassword(pword);
loginReq.setProductId(productId);
loginReq.setLocationId(0);
loginReq.setVendorSoftwareId(0);
LoginResp loginResp=new LoginResp();
loginResp=betfair.login(loginReq); //this line is very slow ;(
sessionToken=loginResp.getHeader().getSessionToken();
...
}
Строка "loginResp = betfair.login (loginReq)" занимает время (у меня очень медленная сеть 3G) и задерживает весь поток программы. Могу ли я поднять событие, когда это завершится?
т.е. Мне бы хотелось, чтобы этот вид псевдокода обработчика событий:
private void handleNewLoginResp(...)
{
System.out.println("login response received");
sessionToken=loginResp.getHeader().getSessionToken();
}
Я надеюсь, что это будет достаточно просто! Я пробовал гуглить, но все, что я могу найти, это статьи о графическом интерфейсе и т. Д. enter code here