如何创建无限区间Observable,每隔一段时间会发出新的Object?

时间:2017-11-18 13:47:21

标签: kotlin rx-java rx-java2

我正在尝试创建一个每秒都会发出新对象的Observable。 所以现在我只是编写一个Observable,它从列表中发出有限数量的对象,并且具有间隔Observable。

@bottle.route('/', method='POST')
def main_server_input():
    request_data = bottle.request.forms['request_data']
    request_data = json.loads(request_data)
    try:
        response_data = process_message_from_scenario(request_data)
    except:
        error_message = utilities.get_error_message_details()
        error_message = "Exception during processing of command:\n%s" % (error_message,)
        print(error_message)
        response_data = {
            'success' : False,
            'error_message' : error_message,
        }
    return(json.dumps(response_data))

那么如何实现这个无限的方式,每隔2秒就会有一些具有一些参数的类SomeClass1的新对象?

1 个答案:

答案 0 :(得分:0)

以下是我的问题的答案,满足了我的要求:

 override fun onCreate(savedInstanceState: Bundle?) {
    super.onCreate(savedInstanceState)
    setContentView(R.layout.activity_main)

    var counter = 0

    val periodicSomeClass1 = Observable.interval(1, TimeUnit.SECONDS)
            .flatMap(
                    {
                        counter++
                        Observable.just(SomeClass1("$counter", counter))
                    }
            )


    periodicSomeClass1.subscribe { t: SomeClass1 -> Log.v("periodicSomeClass1", t.toString())  }

}