首页
学习
活动
专区
圈层
工具
发布

C#报错——(Winform) 在某个线程上创建的控件不能成为在另一个线程上创建的控件的父级

问题点描述:   我新建一个线程,并在这个线程中,把某个控件的父级去掉或者更改,导致报这个异常 网上的解析如下:   “Windows 窗体”使用单线程单元 (STA) 模型,因为“Windows 窗体”基于本机...Win32 窗口,而 Win32 窗口从本质上而言是单元线程。...STA 模型意味着可以在任何线程上创建窗口,但窗口一旦创建后就不能切换线程,并且对它的所有函数调用都必须在其创建线程上发生。...STA 模型要求需从控件的非创建线程调用的控件上的任何方法必须被封送到(在其上执行)该控件的创建线程。...如果您在控件中为大量占用资源的任务使用多线程,则用户界面可以在背景线程上执行一个大量占用资源的计算的同时保持可响应。 用人话描述为:控件是属于主线程(UI线程),不可以跨线程修改其父级。

4K41

在云服务器上基于docker安装jenkins

下面记录一下在云服务器上的安装过程。 基于docker安装jenkins 下面记录了如何在云服务器上安装jenkins。 新建一个jenkins_docker文件夹,在文件夹里新建一个data文件夹。...mirrors.tuna.tsinghua.edu.cn/jenkins/updates/update-center.json 查看运行log docker logs -f jenkins 可以看到登录密钥 图片 在浏览器中访问主机...(js|css|png)$ { proxy_pass http://xx.xx.xx.xx:xxx; #设置ip和端口 } } 记得在云服务器里放行相应的端口号...图片 设置域名解析 在购买域名后就可以使用DNSPod工具设置域名解析了。 图片 这里设置的jenkins是域名的前缀,可以以此来区分不同的服务。记录值中填写服务器的公网IP。 OK完事。...这时就可以在浏览器中用jenkins.域名访问jenkins服务了。 Jenkins中文网址: https://www.jenkins.io/zh/ 我是首飞,一个帮大家填坑的机器人开发攻城狮。

10.1K00
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    在一台Apache服务器上创建多个站点(不同域名)

    例如要在一台服务器上设置如下两个站点: http://www.test1.com http://www.test1.com ---------------------------------------...----------------------------------------- 下面以CentOS 7.2系统为例,详细说明如何配置基于不同域名的Apache虚拟主机。...第三步:在/etc/hosts文件中将网站的域名绑定到本地环回地址上(在hosts文件末尾加入以下信息) 127.0.0.1 www.test1.com 127.0.0.1 www.test2.com...本地配置多站点服务器 第一步:开启Apache的vhost模块 在 http.conf 配置文件中,找到下面的代码行,删除前面的 # 号,并开启这个 vhost 模块。...在 http.conf 文件中加入一行 Include/etc/httpd/conf/vhost.conf,将 vhost.conf 文件内容包含进来。 第三步:重启服务器

    4.3K20

    基于TensorFlow.js在浏览器上构建深度学习应用

    对于学习少量数据集,我们在浏览器上可以进行实时模型训练。...也会同时创建dist文件夹,它会存储构建过程创建的文件。另一个重要的脚本是调用yarn start,它会在localhost:9966开启开发服务,监控你的源代码变化并自动更新你的应用。...实力化KNN图像分类器 我们开始检查应用的源代码。因为本书是基于浏览器的深度学习,所以我们只关注应用中相应的部分。...虽然在本例中我们并没有使用该变量,但是它会基于某些事件给我们停止/暂停迭代训练的选项。...这两个函数包括在浏览器上运行石头剪刀布游戏的有效代码。它们处理游戏的流程,监控TensorFlow.js迭代过程中设置的中间变量,检查用户当前在摄像头做的哪种手势,并相应的更新UI。

    1.4K40

    手把手教程:在Windows 10上搭建带公网访问的WebDAV服务器(基于ZeroNews)

    大家是否曾幻想过,能将自己Windows 10电脑上的任何一个文件夹,变成一个随时随地、从任何设备都能安全访问的“私有云盘”?无需依赖付费网盘的会员限速,也不怕敏感数据存放在第三方服务器?...在添加网站界面下,输入网站名称,如 "webdav",选择要分享的文件路径,输入端口号(如 8080),然后点击确定完成 WebDAV 网站添加。在网站主界面下,可查看创建好的 WebDAV 网站。...接入来,在本地运行 zeronews windows 客户端,来映射 webdav 网站,已实现公网访问第 3 步: 在windows 上 运行 Zeronews Agent参考在 windows 中运行...ZeroNews, 在windows 电脑上运行 ZeroNews,绑定 Token, 完成 ZeorNews Agent上线。...第 6 步: webdav 的常用应用方式​通过 "映射网络驱动器" 的方式将 webdav 挂载到远程电脑本地 右键点击 "此电脑", 然后点击 "映射网络驱动器" 在添加映射网络驱动器的窗口中,将

    67920

    针对SAS用户:Python数据分析库pandas

    与SAS不同,Python解释器正常执行时主要是静默的。调试时,调用方法和函数返回有关这些对象的信息很有用。这有点类似于在SAS日志中使用PUT来检查变量值。...NaN被上面的“下”列替换为相邻单元格。下面的单元格将上面创建的DataFrame df2与使用“前向”填充方法创建的数据框架df9进行对比。 ? ?...NaN被上面的“上”列替换为相邻单元格。下面的单元格将上面创建的DataFrame df2与使用“后向”填充方法创建的数据框架df10进行对比。 ? ?...下面我们对比使用‘前向’填充方法创建的DataFrame df9,和使用‘后向’填充方法创建的DataFrame df10。 ? ?...在删除缺失行之前,计算在事故DataFrame中丢失的记录部分,创建于上面的df。 ? DataFrame中的24个记录将被删除。

    14.9K20

    Pandas 中文官档 ~ 基础用法4

    pandas 对象基于类型进行迭代操作。...简言之,基础迭代(for i in object)生成: Series :值 DataFrame:列标签 例如,DataFrame 迭代时输出列名: In [245]: df = pd.DataFrame...如果必须对值进行迭代,请务必注意代码的性能,建议在 cython 或 numba 环境下实现内循环。参阅增强性能一节,查看这种操作方法的示例。...::: ::: danger 警告 永远不要修改迭代的内容,这种方式不能确保所有操作都能正常运作。基于数据类型,迭代器返回的是复制(copy)的结果,不是视图(view),这种写入可能不会生效!...这个操作返回一个迭代器,生成索引值及包含每行数据的 Series: In [251]: for row_index, row in df.iterrows(): .....: print(

    3.2K40

    Pandas 中文官档 ~ 基础用法4

    pandas 对象基于类型进行迭代操作。...简言之,基础迭代(for i in object)生成: Series :值 DataFrame:列标签 例如,DataFrame 迭代时输出列名: In [245]: df = pd.DataFrame...如果必须对值进行迭代,请务必注意代码的性能,建议在 cython 或 numba 环境下实现内循环。参阅增强性能一节,查看这种操作方法的示例。...::: ::: danger 警告 永远不要修改迭代的内容,这种方式不能确保所有操作都能正常运作。基于数据类型,迭代器返回的是复制(copy)的结果,不是视图(view),这种写入可能不会生效!...这个操作返回一个迭代器,生成索引值及包含每行数据的 Series: In [251]: for row_index, row in df.iterrows(): .....: print(

    2.6K20

    数据分析利器 pandas 系列教程(二):强大的 DataFrame

    在上一篇文章 数据分析利器 pandas 系列教程(一):从 Series 说起 中:详细介绍了 pandas 基础数据结构 Series,今天说说另一种数据结构 DataFrame。 ?...就有四列,而且都有名字:name、sex、course、grade,通过这些名字,可以索引到某一列,这些名字称为列(索引),因此,在 dataframe,我更愿意将 index 称为行索引,以此和列索引区分开...创建 dataframe 其实有 N 种方法,没必要一一掌握,毕竟常用的不过两三种,我也不打算把所有的创建方式都说一遍,那样有炫技的嫌疑,按照自己的理解,我把这些创建方式统一分为两大类:按列的方式创建、...按列的方式创建,不过没有上面所讲的那种方式常用。...(1, df.columns, ['Alice', 'english', 100], takeable=False) 新增一列可以通过 df[列名]=可迭代对象 或者 df[:,列名]=可迭代对象 实现

    1.4K30

    python df遍历的N种方式

    in的存在使得python在操作可迭代对象时变得简单得多,用于配合for使用逐个取可迭代对象的元素。...for语句参与的具体迭代的过程为:可迭代对象通过iter方法返回迭代器,迭代器具有next方法,for循环不断地调用next方法,每次按序返回迭代器中的一个值,直到迭代到最后,没有更多元素时抛出异常StopIteration...所谓生成器其实是一种特殊的迭代器,内部支持了迭代器协议。Python中提供生成器函数和生成器表达式两种方式实现生成器,每次请求返回一个结果,不需要一次性构建一个结果列表,节省了内存空间。...在Python 3中可使用range返回一个迭代器,用来一次一个值地遍历一个范围. # 生成器函数方式实现生成器 def gensquares(N): for i in range(N): yield...Pandas的DataFrame、series基础单元数据结构基于链表,因此可将函数在整个链表上进行矢量化操作,而不用按顺序执行每个值。

    3.3K40

    MLlib

    Spark MLlib 简介 MapReduce对机器学习的算法编写的缺点: 反复读写磁盘 磁盘IO开销大 机器学习算法中具有大量的迭代计算,导致了MapReduce不太适合。...Spark是基于内存的计算框架,使得数据尽量不存放在磁盘上,直接在内存上进行数据的操作。 MLlib只包含能够在集群上运行良好的并行算法。...DF被ML Pinline用来存储源数据。DF中的列可以是: 文本 特征向量 真实和预测标签等 转换器transformer能将一个DF转换成另一个DF,增加一个标签列。...评估器estimator指的是学习算法或在训练数据上的训练方法的抽象概念,本质上就是一个算法。 参数parameter用来进行参数的设置。...统计各个词条的词频 IDF:是一个评估器,在数据集上应用IDF的fit方法,会产生一个IDFmodel from pyspark.ml.feature import HashingTF,IDF,Tokenizer

    80810

    Kaggle知识点:缺失值处理

    汉明距离实际上与属性间不同取值的数量一致。 KNN算法最吸引人的特点之一在于,它易于理解也易于实现。其非参数的特性在某些数据非常“不寻常”的情况下非常有优势。...期望值最大化方法(Expectation maximization,EM) EM算法是一种在不完全数据情况下计算极大似然估计或者后验分布的迭代算法。...在每一迭代循环过程中交替执行两个步骤: E步(Excepctaion step,期望步),在给定完全数据和前一次迭代所得到的参数估计的情况下计算完全数据对应的对数似然函数的条件期望 M步(Maximzation...算法在E步和M步之间不断迭代直至收敛,即两次迭代之间的参数变化小于一个预先给定的阈值时结束。该方法可能会陷入局部极值,收敛速度也不是很快,并且计算很复杂。...它寻找之间具有最大相关性的两个属性,其中没有遗失值的一个称为代理属性,另一个称为原始属性,用代理属性决定原始属性中的遗失值。这种基于规则归纳的方法只能处理基数较小的名词型属性。

    2.5K20

    GPT4做数据分析时间序列预测之四相当棒2023.5.25

    我们在一个循环中进行预测,每次迭代都会对不同的时间窗口进行预测。我们将使用pandas的ExcelWriter对象来将所有的预测结果保存到同一个Excel文件中。...每次迭代都会对一个不同的时间窗口进行预测,并将预 3、 根据您的需求,以下是将这三种预测方法(SARIMAX、Prophet、ARIMA)合并到一个程序中,并将预测结果保存到Excel文件的不同列中的代码...来保存所有的预测结果 所有预测 = pd.DataFrame() for i in range(48, len(数据)): # 创建一个数据子集,包含到当前迭代的所有行 数据子集 =...来保存所有的预测结果 所有预测 = pd.DataFrame() for i in range(48, len(数据)): # 创建一个数据子集,包含到当前迭代的所有行 数据子集 =...Bokeh - 用于在web浏览器中进行交互式数据可视化的库。可以生成各种图表,并在网页中展示,交互性很强。 4.

    70320

    建立脑影像机器学习模型的step-by-step教程

    请注意,seaborn操作基于另一个名为matplotlib的库,这是Python中使用最广泛的绘图库。...对于目标变量,我们将dataset_df中的列诊断分配给变量targets_df。...预测存储在target_test_predicted中。然后,这个变量被用来填充之前创建的空dataframe叫做predictions_df (在代码片段21中创建)。...这将允许我们检查哪些特征在统计上对任务做出了重要贡献。 接下来,我们创建一个dataframe来存储系数值和相应的p值。...也许最明显和直接的策略之一是尝试不同的分类器。实际上,可以实现几个最常用的分类器,而不必对上面的代码做太多更改。另一种可能的策略是添加一个功能选择步骤来删除不太相关的功能。

    93450

    【机器学习】集成模型集成学习:多个模型相结合实现更好的预测

    1.4 多个基分类器如何进行分类 在多个基分类器上进行分类的最简单手段是投票: 对于离散类,在测试集上运行多个基分类器,并选择由最多基分类器预测的类(少数服从多数)。...具体方法: 迭代地改变训练实例的分布和权重,以反映分类器在前一次迭代中的表现。 从初始训练集训练出一个基学习器;这时候每个样本的权重都为。 每个都会根据上一轮预测结果调整训练集样本的权重。...数学过程复杂,但是计算的开销较小;整个过程建立在迭代的采样过程和加权的投票(voting)上。 通过迭代的方式不断的拟合残差信息,最终保证模型的精度。 比bagging方法的计算开销要大一些。...第四步:然后将基础模型(此处是决策树)拟合到整个训练集上。 第五步:使用此模型,在测试集上进行预测。 第六步:对另一个基本模型(比如knn)重复步骤2到4,产生对训练集和测试集的另一组预测。...为bagging创建的子集的大小也可能小于原始集。 第一步:从原始数据集有放回的选择观测值来创建多个子集。 第二步:在每一个子集上创建一个基础模型(弱模型)。

    18K72
    领券