kotlin 回调使用方式
某些业务上协程的使用导致需要回调方式获取结果
回调接口和引用回调的方法:
/**
* 回调接口
*/
public interface CallbackListener<T>{
/**
* 回调方法
* @param msg 回调消息
*/
void invoke(Result<T> msg);
}
/**
* 回调方法
*/
suspend fun sendSnsFromOss(loginUser: String, uin: Long, param: SendSnsParam, listener: CallbackListener<WsMessage<Any>>)
/**
* 回调方法实现
*/
override suspend fun sendSnsFromOss(loginUser: String, uin: Long, param: SendSnsParam, listener: CallbackListener<WsMessage<Any>>) = coroutineScope {
//业务内容
val result: Result<WsMessage<Any>> = Result(