Tôi đang cố gắng để chạy một xoắn-server với pygame-khách hàng:Khách hàng được xoắn trong vòng mainlock?
class ChatClientProtocol(LineReceiver):
def lineReceived(self,line):
print (line)
class ChatClient(ClientFactory):
def __init__(self):
self.protocol = ChatClientProtocol
def main():
flag = 0
default_screen()
while True:
for event in pygame.event.get():
if event.type == pygame.QUIT:
return
elif event.type == pygame.KEYDOWN and event.key == pygame.K_ESCAPE:
return
elif event.type == pygame.MOUSEBUTTONDOWN and event.button == 1:
pos = pygame.mouse.get_pos()
# some rect.collidepoint(pos) rest of loop...
Và đây là server:
from twisted.internet.protocol import Factory
from twisted.protocols.basic import LineReceiver
from twisted.internet import reactor
class Chat(LineReceiver):
def __init__(self, users, players):
self.users = users
self.name = None
self.players = players
def connectionMade(self):
new = 'player_' + str(len(self.players) + 1)
self.players.append(new)
self.sendLine(str(self.players,))
class ChatFactory(Factory):
def __init__(self):
self.users = {} #maps instances to clients
self.players = []
def buildProtocol(self, addr):
return Chat(self.users,self.players)
reactor.listenTCP(6000, ChatFactory())
reactor.run()
Tôi đang chạy máy chủ này với mã khách hàng với các Phương thức reactor.CallLater() và mã pygames và client kết nối tốt. Tôi có sử dụng phương pháp lò phản ứng sai hoặc có điều gì đó có cấu trúc sai với mã pygames không? Bất kỳ trợ giúp sẽ được đánh giá cao.
Vì vậy, tôi không biết liệu vòng lặp bên trong bit pygames có bị vỡ để gọi lò phản ứng nữa không?
Có điều gì đó không hoạt động không? Vấn đề của bạn ở đâu? – sloth
Tôi sẽ chỉnh sửa để giải thích chi tiết hơn. – tijko