Я знаю, что это старо, но добавление для тех, кто искал меня. Создайте фрейм данных в pandas, df в этом коде
ip_addresses = df.source_ip.unique()
ip_dict = dict(zip(ip_addresses, range(len(ip_addresses))))
. Это даст вам карту словарей ip-адресов без необходимости ее записи.
Оказалось, что я должен создавать новые OneTimeWorkRequest.Builder
каждый раз, когда хочу поставить новую задачу в очередь. Кажется неправильным для меня, я использовал тот же подход с Firebase JobDispatcher
, и он работал как шарм. Я думаю, что это из-за этого кода в инициализации конструктора:
public Builder(@NonNull Class<? extends Worker> workerClass) {
mId = UUID.randomUUID();
mWorkSpec = new WorkSpec(mId.toString(), workerClass.getName());
addTag(workerClass.getName());
}
mId
создан здесь, и он остается тем же самым для одного и того же экземпляра строителя. По-моему, он должен быть сгенерирован при вызове build()