При использовании list.remove(value) вылезает следующая ошибка:
ValueError: list.remove(x): x not in list
Нужно удалить элемент по значению из списка в потоке(значение которое нужно удалить, передается в него), но вылезает ошибка, указанная выше. Проверка на наличие элемента вне потока срабатывает, а в самом потоке нет.
def msgs(event,vk):
peer_id = event.user_id
#некоторые действия
peers.remove(peer_id) ошибка тут
def bot():
for event in longpoll.listen():
if event.type == VkEventType.MESSAGE_NEW and not event.user_id in info.ignorelist:
peer_id = event.peer_id
if peer_id not in peers:
class message(Thread):
def __init__(self, vk, event):
Thread.__init__(self)
self.vk = vk
self.event = event
def run(self):
msgs(event, vk)
my_thread1 = message(vk, event)
my_thread1.start()
peers.append(peer_id)
Кирилл Легенда, у вас тут все кардинально неверно. Peer_id добавляется в список только после обработки класса message, поэтому для потока данного айди просто нет.