socket.accept() 挂起我的程序

2024-03-23

我正在尝试创建可以通过 python 中的套接字进行通信的应用程序。我已经能够在控制台程序中实现这一点,并尝试在 WPF 中执行相同的操作。这是一个非常简单的程序,应该充当服务器,其中创建套接字,绑定到端口,然后侦听连接。我现在面临的问题是,每次我包含套接字接受连接的代码时,我的程序都会挂起。我试图在网上寻找解决方案,但每个人似乎都按照我正在做的方式完全相同。以前有人遇到过这个问题吗?如果是的话,你是如何解决的。 在此先感谢您的帮助。

这是代码:

import wpf
import socket
import sys
import clr
import System


HOST=''
PORT = 8888

from System.Windows import Application, Window

s=socket.socket(socket.AF_INET,socket.SOCK_STREAM)


class MyWindow(Window):
    def __init__(self):
        wpf.LoadComponent(self, 'managementToolSimulator2.xaml')


    def Button1_Click(self, sender, e):
        pass

    def Window_Loaded(self, sender, e):
        s.bind((HOST,PORT))
        s.listen(5)
        self.ListBox1.AddText('Listening...')

        while 1:
            conn,addr=s.accept()
            self.ListBox1.AddText('Got connection')
        pass


if __name__ == '__main__':
    Application().Run(MyWindow())

如果我运行没有该行的程序:

     while 1:
        conn,addr=s.accept()
        self.ListBox1.AddText('Got connection')

它运行良好,但如果我包含该行,程序将挂起并且必须从任务管理器停止。


关闭服务器线程。

您不得在 GUI 事件处理程序中进行阻塞调用。 GUI 线程必须及时处理 Windows 消息 - 您不能只是在处理程序中阻止执行。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

socket.accept() 挂起我的程序 的相关文章

  • python 中的代表

    我实现了这个简短的示例来尝试演示一个简单的委托模式 我的问题是 这看起来我已经理解了委托吗 class Handler def init self parent None self parent parent def Handle self
  • 如何迭代按值排序的 Python 字典?

    我有一本字典 比如 a 6 b 1 c 2 我想迭代一下by value 不是通过键 换句话说 b 1 c 2 a 6 最直接的方法是什么 sorted dictionary items key lambda x x 1 对于那些讨厌 la
  • 如何使用 Plotly 中的直方图将所有离群值分入一个分箱?

    所以问题是 我可以在 Plotly 中绘制直方图 其中所有大于某个阈值的值都将被分组到一个箱中吗 所需的输出 但使用标准情节Histogram类我只能得到这个输出 import pandas as pd from plotly import
  • 如何从作为 UWP 运行的 WPF 应用程序处理文件激活?

    我有一个WPF我想要处理文件激活的应用程序 我找到了通过向注册表添加特定值来解决问题的解决方案 问题是最终的应用程序应该是UWP应用程序 我正在使用桌面桥来执行此操作 如果应用程序运行为UWP 它无法到达注册表来设置这些特定值 有没有其他方
  • 如何在 pytest 中将单元测试和集成测试分开

    根据维基百科 https en wikipedia org wiki Unit testing Description和各种articles https techbeacon com devops 6 best practices inte
  • Pandas 中允许重复列

    我将一个大的 CSV 包含股票财务数据 文件分割成更小的块 CSV 文件的格式不同 像 Excel 数据透视表之类的东西 第一列的前几行包含一些标题 公司名称 ID 等在以下列中重复 因为一家公司有多个属性 而不是一家公司只有一栏 在前几行
  • 如何销毁或分离 CollectionView

    我观察到 WPF ItemsControls 的奇怪行为 如果将 ItemsSource 设置为实现INotifyCollectionChanged然后设置ItemsSource为空 则CollectionView创建它是为了向 Items
  • 链路范围 IPv6 多播数据包突然无法在 MacBook Pro 上路由?

    这是一个有点晦涩的问题 但我很困惑 我想也许有人对这个问题有更多的线索 我的同事已经在他的 MacBook Pro 上成功运行了一个使用 IPv6 多播的内部应用程序几个月了 但今天 Mac 决定停止路由多播数据包 特别是 该程序打印此错误
  • 对图像块进行多重处理

    我有一个函数必须循环遍历图像的各个像素并计算一些几何形状 此函数需要很长时间才能运行 在 24 兆像素图像上大约需要 5 小时 但似乎应该很容易在多个内核上并行运行 然而 我一生都找不到一个有据可查 解释充分的例子来使用 Multiproc
  • Seaborn Pairplot 图例不显示颜色

    我一直在学习如何在Python中使用seaborn和pairplot 这里的一切似乎都工作正常 但由于某种原因 图例不会显示相关的颜色 我无法找到解决方案 因此如果有人有任何建议 请告诉我 x sns pairplot stats2 hue
  • 在 pytube3 中获取 youtube 视频的标题?

    我正在尝试构建一个应用程序来使用 python 下载 YouTube 视频pytube3 但我无法检索视频的标题 这是我的代码 from pytube import YouTube yt YouTube link print yt titl
  • 将 2D NumPy 数组按元素相乘并求和

    我想知道是否有一种更快的方法 专用 NumPy 函数来执行 2D NumPy 数组的元素乘法 然后对所有元素求和 我目前使用np sum np multiply A B 其中 A B 是相同维度的 NumPy 数组m x n 您可以使用np
  • 在 Pandas 中使用正则表达式的多种模式

    我是Python编程的初学者 我正在探索正则表达式 我正在尝试从 描述 列中提取一个单词 数据库名称 我无法给出多个正则表达式模式 请参阅下面的描述和代码 描述 Summary AD1 Low free DATA space in data
  • 创建嵌套字典单行

    您好 我有三个列表 我想使用一行创建一个三级嵌套字典 i e l1 a b l2 1 2 3 l3 d e 我想创建以下嵌套字典 nd a 1 d 0 e 0 2 d 0 e 0 3 d 0 e 0 b a 1 d 0 e 0 2 d 0
  • Tkinter - 浮动窗口 - 调整大小

    灵感来自this https stackoverflow com a 22424245 13629335问题 我想为我的根窗口编写自己的调整大小函数 但我刚刚注意到我的代码显示了一些性能问题 如果你快速调整它的大小 你会发现窗口没有像我希望
  • 迭代 my_dict.keys() 并修改字典中的值是否会使迭代器失效?

    我的例子是这样的 for my key in my dict keys my dict my key mutate 上述代码的行为是否已定义 假设my dict是一本字典并且mutate是一个改变其对象的方法 我担心的是 改变字典中的值可能
  • 当鼠标悬停在上面时,intellisense vscode 不显示参数或文档

    我正在尝试将整个工作流程从 Eclipse 和 Jupyter Notebook 迁移到 VS Code 我安装了 python 扩展 它应该带有 Intellisense 但它只是部分更糟糕 我在输入句点后收到建议 但当将鼠标悬停在其上方
  • 无法在前端使用 JavaScript Fetch API 将文件上传到 FastAPI 后端

    我正在尝试弄清楚如何将图像发送到我的 API 并验证生成的token那是在header的请求 到目前为止 这就是我所处的位置 app post endreProfilbilde async def endreProfilbilde requ
  • 从 Twitter API 2.0 获取 user.fields 时出现问题

    我想从 Twitter API 2 0 端点加载推文 并尝试获取标准字段 作者 文本 和一些扩展字段 尤其是 用户 字段 端点和参数的定义工作没有错误 在生成的 json 中 我只找到标准字段 但没有找到所需的 user fields 用户
  • 迭代 pandas 数据框的最快方法?

    如何运行数据框并仅返回满足特定条件的行 必须在之前的行和列上测试此条件 例如 1 2 3 4 1 1 1999 4 2 4 5 1 2 1999 5 2 3 3 1 3 1999 5 2 3 8 1 4 1999 6 4 2 6 1 5 1

随机推荐

  • 如何使用 Android Gradle 插件 0.7 配置 NDK

    新的 Android gradle 插件 0 7 似乎包含了对 NDK 的新支持 但在文档中几乎没有提到它 我找到的唯一参考是一个名为ndkSanAngeles https android googlesource com platform
  • 优化 Excel 公式 - SUMPRODUCT 与 SUMIFS/COUNTIFS

    根据一些网站的说法 SUMIFS 和 COUNTIFS 比 SUMPRODUCT 更快 例如 http exceluser com blog 483 excels sumifs or sumproduct which is faster h
  • 用于提供静态内容的 Servlet

    我在两个不同的容器 Tomcat 和 Jetty 上部署了一个 web 应用程序 但它们用于提供静态内容的默认 servlet 有不同的方式来处理我想要使用的 URL 结构 details http issues apache org bu
  • 除主活动外,其他活动中没有应用栏和抽屉

    主要活动 public class MainActivity extends AppCompatActivity Override protected void onCreate Bundle savedInstanceState supe
  • 何时使用 Dart 中的接口?

    我正在阅读 Dart 的文档 对于如何使用接口 我有点困惑 也许是因为我来自 Ruby 当然 接口并不是 Dart 所独有的 关于何时应该使用接口有很多解释 This one https stackoverflow com question
  • Web 开发 - 对象数据库与关系数据库

    使用对象数据库或关系数据库进行涉及大量 CRUD 的常规 Web 开发有何优缺点 更新 我重新打开了赏金奖励 以便给内维尔 OODBMS 的概念已经被打破 过去几十年中出现的各种商业和免费产品几乎没有在市场上产生影响 就您可以向数据提出的问
  • 无法从 Play 商店生产区域停用 Android 分阶段推出应用程序

    我们将一款 Android 应用上传到 Play 商店 分阶段向 5 的市场推出 不确定谷歌在这里如何定义市场 但这是另一个问题 我们决定删除该应用程序并恢复之前发布的应用程序 然而 这似乎是不可能做到的 当我在开发人员控制台上切换到高级模
  • SQL Server 是否优化 LIKE ('%%') 查询?

    我有一个存储过程 它对记录执行搜索 问题是一些来自 UI 的搜索条件可能是空字符串 因此 当未指定条件时 LIKE 语句就变得多余 如何有效地执行该搜索或 Sql Server 或者 它是否优化 LIKE 查询 因为这意味着没有什么可比较的
  • 数据点更改后插入行

    我有一个数据集 如下所示 This1 GH This2 GH This3 GH This4 BR This5 BR This6 VB 当数据点发生变化时 即 GH 变为 BR 时 我希望 Excel 插入换行符 所以最终的数据看起来像这样
  • 在下载管理器中,如何在通知栏“取消”时获取状态?

    我正在使用下载管理器在 Android 中下载文件 但是 当点击通知栏上的 取消 按钮时 我无法收到任何广播 我只找到两个广播 1 DownloadManager ACTION DOWNLOAD COMPLETE 2 DownloadMan
  • 使用 Bootstrap 2 将某些地方的字形颜色更改为蓝色,但不是全部地方

    我的 UI 使用 Bootstrap 框架 我想将字形的颜色更改为蓝色 但不是在所有地方 在某些地方它应该使用默认颜色 我已经参考了这两个链接 但没有发现任何有用的信息 我可以仅使用 CSS 为 bootstrap 图标添加颜色吗 http
  • 动态更改母版页中的菜单类别

    我如何更改母版页中菜单的 CSS 类名称 子页面 当菜单的任何子形式打开时 我想将类更改为 活动 有可用的 C 或 JavaScript 代码吗 Thanks 通过理解你的问题 我认为你想在页面更改时更改 li 的类或菜单中使用的任何标签
  • Ms Access 是 DBMS 还是 RDBMS?

    Ms Access 是 DBMS 还是 RDBMS 我也在谷歌上找到这个问题的答案 但在一些网站或博客中说它是DBMS 而另一些则说它是RDBMS 那么正确答案是什么 请理解为什么是 DBMS 或 RDBMS 简答 Both Detail
  • 在嵌套的 If 中应用两个条件或与 And 一起使用单个条件哪个更好? [关闭]

    Closed 这个问题是基于意见的 help closed questions 目前不接受答案 嵌套 If 或单个 if 与 And 运算符 哪个是更好的方法 单个 If 与 And if txtPackage Text string Em
  • GWT 程序是否有办法判断它是处于托管模式还是 Web 模式?

    我希望我的 GWT 程序能够确定它是处于托管模式还是 Web 模式 有没有办法做到这一点 Thanks GWT isScript 在非托管模式下返回 true 在托管模式下返回 false http google web toolkit g
  • QThread 正在造成内存泄漏

    经过对我的 QT 应用程序进行大量测试和更改后 Visual Leak Detector 识别出了令人讨厌的泄漏源 8 字节 VLD 报告 QT 应用程序是干净的 除了QThread 指针 一些实现背景 该应用程序由 Jeffrey Hol
  • Gunicorn 无法加载 Flask 应用程序

    我有一个 Flask 应用程序 我试图通过 Gunicorn 提供服务 我正在使用 virtualenv 和 python3 如果我将 venv cd 激活到我的应用程序基目录 然后运行 gunicorn mysite app I get
  • LLblgen:选择不同的?

    我似乎无法弄清楚如何在 Llblgen 2 6 自助服务模型中仅选择不同的条目 我本质上想要这个查询 select distinct City from peopleTable where predicates 我已经有了 PeopleCo
  • myProject.sqlite 位于 Lion OSX Xcode 4.1 中的哪里?

    我无法在 OS 10 7 中找到我的核心数据 sqlite 文件 你们中有人知道如何找到它吗 谢谢 卡斯帕 它与以前的 ios 版本保存在同一位置 但是 Library 文件夹被 Finder 标志隐藏 您可以撤消此标志以使其再次可见 为此
  • socket.accept() 挂起我的程序

    我正在尝试创建可以通过 python 中的套接字进行通信的应用程序 我已经能够在控制台程序中实现这一点 并尝试在 WPF 中执行相同的操作 这是一个非常简单的程序 应该充当服务器 其中创建套接字 绑定到端口 然后侦听连接 我现在面临的问题是