bugfix
GitOrigin-RevId: 85798ce644ab01e9123558d47b40eee865d5c6ca
This commit is contained in:
parent
9971b52b81
commit
25b209fec1
@ -221,8 +221,9 @@ StringBuilder &operator<<(StringBuilder &sb, const SendMessageInfo &info) {
|
|||||||
|
|
||||||
class CliClient final : public Actor {
|
class CliClient final : public Actor {
|
||||||
public:
|
public:
|
||||||
CliClient(bool use_test_dc, bool get_chat_list, bool disable_network, int32 api_id, string api_hash)
|
CliClient(ConcurrentScheduler *scheduler, bool use_test_dc, bool get_chat_list, bool disable_network, int32 api_id, string api_hash)
|
||||||
: use_test_dc_(use_test_dc)
|
: scheduler_(scheduler)
|
||||||
|
, use_test_dc_(use_test_dc)
|
||||||
, get_chat_list_(get_chat_list)
|
, get_chat_list_(get_chat_list)
|
||||||
, disable_network_(disable_network)
|
, disable_network_(disable_network)
|
||||||
, api_id_(api_id)
|
, api_id_(api_id)
|
||||||
@ -3412,6 +3413,11 @@ class CliClient final : public Actor {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void notify() override {
|
||||||
|
auto guard = scheduler_->get_send_guard();
|
||||||
|
send_event_later(actor_id(), Event::yield());
|
||||||
|
}
|
||||||
|
|
||||||
void hangup_shared() override {
|
void hangup_shared() override {
|
||||||
CHECK(get_link_token() == 1);
|
CHECK(get_link_token() == 1);
|
||||||
LOG(INFO) << "StdinReader stopped";
|
LOG(INFO) << "StdinReader stopped";
|
||||||
@ -3436,6 +3442,8 @@ class CliClient final : public Actor {
|
|||||||
|
|
||||||
int32 my_id_ = 0;
|
int32 my_id_ = 0;
|
||||||
|
|
||||||
|
ConcurrentScheduler *scheduler_{ nullptr };
|
||||||
|
|
||||||
bool use_test_dc_ = false;
|
bool use_test_dc_ = false;
|
||||||
ActorOwn<ClientActor> td_;
|
ActorOwn<ClientActor> td_;
|
||||||
std::queue<string> cmd_queue_;
|
std::queue<string> cmd_queue_;
|
||||||
@ -3562,7 +3570,7 @@ void main(int argc, char **argv) {
|
|||||||
scheduler.init(4);
|
scheduler.init(4);
|
||||||
|
|
||||||
scheduler
|
scheduler
|
||||||
.create_actor_unsafe<CliClient>(0, "CliClient", use_test_dc, get_chat_list, disable_network, api_id, api_hash)
|
.create_actor_unsafe<CliClient>(0, "CliClient", &scheduler, use_test_dc, get_chat_list, disable_network, api_id, api_hash)
|
||||||
.release();
|
.release();
|
||||||
|
|
||||||
scheduler.start();
|
scheduler.start();
|
||||||
|
Reference in New Issue
Block a user