support to use asynchronize way to return result vaule of method