java按钮陷下去_付费?广告?捐款?如何让开源软件活下去?

【CSDN编者按】作为一名使用开源软件的开发者,你是否曾思考过开源软件是如何盈利?如何运营下去的?本文作者从正反两面给出自己看到的案例和建议,思考让开源软件持续下去的方式,一起来看看吧。

19838650bcdc3279e807f887ce99a3fc.png

作者 | TJ VanToll

译者 | 香槟超新星,责编 | 伍杏玲

出品 | CSDN(ID:CSDNnews)

以下为译文:

作为一名软件开发者,你可能并不会意识到,对大多数人来说开源背后的商业逻辑完全不合常理。

比如说,几天前我与一个“普通人”的对话如下:

我:“对不起,我来晚了。今天工作忙的焦头烂额的”。朋友:“没事没事。工作遇到什么问题了吗?”我:“我们要在三个不同的JavaScript框架中选出一个用于项目开发,下周就Deadline了,所以必须尽快选择。”朋友:“哦哦,明白了。哪个框架最便宜呢?”我:“哦,它们都是免费的,不要钱。”朋友:(๑°ㅁ°๑)‼

在大多数行业中,你需要为能够帮助你完成工作的工具付费,但软件的世界里我们大多数人都能使用各种免费工具来搭建应用程序。

最受欢迎的文本编辑器?Visual Studio Code,免费。

最受欢迎的源代码管理提供商?Git,免费。

最受欢迎的JavaScript库?React、Angular、Vue以及其他竞争对手全部免费。

付费软件并不稀奇,但令人惊讶的是,仅仅在过去的几年中,我们就已经把很多重要的基础架构转移到了免费和开源的软件上。

这种向免费且开源的工具的转移对开发人员和整个软件行业都有极大的益处,但这种转变也带来了其他后果。在本文中,我将就其中的一种后果进行讨论:即一个有问题的经济模型和我们可以采取的措施都有哪些。

首先让我们先简要回顾一下,我们最终是如何获得今天这样的开源模型的。

5ae663eef2f1516b2d839f6a0d233f23.png

开源是如何来的?

为了能让你体会到时代的变迁有多么巨大,我们来看下2000年代初期微软高管们说的话:

开源是对知识产权的严重破坏。我想象不到还有什么会比开源对软件业务和知识产权行业的伤害更大。”——前Windows主管Jim Allchin“历史证明,尽管这种类型的模型(开源)可能会占有一席之地,但对于建立一个大众化的市场,以及搭建面向消费者们的功能强大且易于使用的软件,这种模型并不成功。”——前微软高级副总裁Craig Mundie

站在今天的角度来嘲笑这些言论很容易,但在当时这种观点并不能算得上是激进。到2000年,开源已经是一个已经立足并在逐步增长的概念了,但大多数公司主要还是选择使用付费方案来搭建应用程序。

我在软件行业的职业生涯始于2000年代初期,当时我的第一份工作涉及一个基于IBM的IDE,用于编写Java代码,一个付费的源代码管理方案(我倒宁愿不记得),以及一个托管我们的生产程序的IBM大型机。

a8d971ced15cfbb4e3e0ed8bc66c55b3.png

IBM的Rational Application Developer,我在2000年代初期用过,直到今天这个软件还存在。

所有这些工具都需要花钱,很多钱,但这种支出被认为是可以接受的,因为这些工具提供了足够的价值,能够保障付出的成本是值得的。

在之后的十年中,业界慢慢地转向开源。公司越来越能够意识到,像MySQL和Apache这样的开源代码工具不仅是可行的,甚至比花大价钱买的商业产品更好。

我向开源转移的经验是关于Web的,与今天的Web相比,2000年代中期那时候的Web像是未经开发的蛮荒西部。Web开发人员的任务内容包括支持一堆令人眼花缭乱的浏览器,从最新发布的Internet Explorer 7到古老的IE6,以及Firefox,开源浏览器开始挑战微软对浏览器市场的束缚。

开发人员搭建的旨在用来管理跨浏览器开发复杂性的工具包括Dojo、MooTools、jQuery以及许多其他工具等等。

4f948a759cd7088794214765ca4f55c2.png

2007年6月的jQuery主页

这些框架都采用了不同的方法,使用了不同的API,但它们都有一个重要的共性:免费以及开源。

更多成熟的开发生态系统,如Java,.NET等,在那时候面对开源的益处时还在纠结,但Web从一开始就是建立在免费且开源的软件的基础上。

这对像我这样的Web开发新手来说是个福音,因为这意味着我在家里就可以立马用Dojo和jQuery上手做点东西了,我在公司也可以开始使用它们了——我曾经习惯于掏钱来购买自己需要的软件工具。

不只有我一个人能立即抓住使用这些新库的机会。jQuery的使用率在2000年代后期激增,催生了一个庞大的jQuery插件生态系统,这些插件在jQuery的基础上添砖加瓦。这些插件中的绝大多数都免费且开源,因为到了那个时候,免费且开源已经成为了人们对所有Web框架以及插件的期待。

新一代的Web软件激发了许多开发人员(包括我自己)的灵感,并帮助Web变成现在。“所有软件都必须要免费且开源”的预期导致了当今开源界的一个困境:经济和资金结构方面是有问题的。

3131d19408ed42120eedc77be88ba815.png

开源与经济学

在最开始时,开源项目是个人或小团体的兴趣项目,发展到后面免费分享给世界。这种现象在软件世界中很普遍,是很棒的一件事情。

但这并不意味着这些开发人员所做的工作100%都是为了无私奉献。时至今日,人们参与开源项目的主要动力是为了自己的职业发展。例如,jQuery团队的前成员们现在很多都在大型科技公司中担任重要角色。MooTools的几个贡献者现在Facebook,从事React方面的工作。我曾参与jQuery UI两年,后来这段经历帮助我得到了今天在Progress的这份工作。

本来把职业发展作为参与开源的主要动力无可厚非,但当项目作者取得一定成功时,可能就会出现问题。因为事实证明,一旦你已经得到了自己想要的知名度,突然间就会觉得,处理那些GitHub的随机issues已经不再是你度过星期六晚上的理想方式了。

在这种情况下,许多开发人员会试图通过收集捐款来覆盖他们自己所花的时间和精力。例如,如果你回顾2007年的jQuery网站,请注意看,屏幕的左下方已经出现了一个捐赠按钮。

8a3deb16c823969592735ffc5059758c.png

Dojo项目也从差不多那时候开始在网站上设置了捐赠选项。

fbb89a70c62ed5e37b77eb0e264ad44c.png

如今,捐款通常是通过Patreon或某种形式的赞助来收集的,ESLint和Vue.js等项目就是这样。也许最臭名昭著的例子是流行的core-js库,在每次安装时都会显示一个公开的捐赠请求,这引发了一些争议。感谢您使用core-js(https://github.com/zloirock/core-js)来polyfill JavaScript的标准库!这个项目需要您的帮助!请考虑在Open Collective 或 Patreon上支持我们!> https://opencollective.com/core-js> https://www.patreon.com/zloirock还有,core-js的作者目前正在找工作中。-)比这争议更大的是,从去年开始,the Standard JavaScript项目开始在你每次安装它的软件包的时候都显示广告了。

如你所料,开发人员对广告不太满意,因此npm迅速采取了行动——禁止任何在运行时,安装时或在软件开发周期的其他阶段(例如via npm脚本)显示广告的软件包。

无论你如何看待npm日志中的广告,有一个共识是我们都能达成的:从经济学的角度来看,作者想要通过自己的作品来赚钱的想法再正常不过了。

在当今的开源世界中,像core-js和Standard这样的项目所提供的价值,与维护者所获得的经济利益之间存在巨大的鸿沟。

考虑到这一背景,让我们来看看我所认为的可以用来试着解决资金缺口的三种方法。

cdb60d7c7febbb55d9de93813a6453ad.png

解决方案

解决方案1:基金会

解决开源项目资金问题的最古老方案就是以基金会的形式存在的。其中最著名的是Linux基金会。该基金会成立于2000年,如今拥有超级多的团体成员。该基金会支持着几个最大的开源项目,从Linux本身,到Node.js,再到jQuery,以及差不多它们之间的所有东西。

8c3d0ecb62d24349873aef01fa673c32.png

Linux 基金会支持了大量项目的开发

尽管Linux 基金会是最大的软件基金会,对于更专业的软件技术或领域,还有许多其他的基金会存在。例如,.NET 基金会帮助支持.NET项目,而FINOS,即Fintech Open Source Foundation,则支持着金融领域的开源项目。

这些基金会做了很有益的事,像Linux这样的大型开源项目得以维护到今天的原因,但它们不是万能的,不能完全解决开源的资金问题。

基金会最大的问题,也许是所支持的项目的广度太大。如果你是一家公司,然后你花钱加入一个基金会(通常是一大笔钱),那么你将只能指望基金会把这些资金适当地分配到各个开源项目中。当基金会支持的项目数量多的惊人时,也无法保证你的钱会投入到你的公司会用到或会关心的项目中。你的资金也很有可能会流入你的竞争对手使用的开源项目中。

因此,对于大型的成熟项目(例如Linux,Node.js和jQuery),我认为基金会是一种出色的解决方案,但它对于没有那么成熟的开源项目就起不到多大作用了。不过好消息是,针对这些较小的项目,有另一种模型近来引起了很多关注:订阅。

解决方案2:订阅

长期以来,“订阅”一直是开源项目作者用来筹集资金来支持自己工作的一种流行方式。

在2000年代初期,用PayPal这样的服务来进行一次性捐赠以及重复付款很流行。最近,Patreon推广了一种为开源项目提供资金的订阅模型,并且现在许多不同的订阅平台都在争相提供类似的订阅服务。

例如,2016年启动的Open Collective平台提供了一种围绕公共捐赠展开的融资模式。

aa04be5cdd1c6b67f324a04867e3aa20.png

如今,非常多的项目都使用了Open Collective,包括Bootstrap和core-js。因为Open Collective上的捐赠是公开的,所以能够告诉你某些项目的实际收入是多少。例如,以下是Open Collective上给Bootstrap捐赠最多的一些组织和个人。

6e253ab2758031fa6be7b4bc677cf842.png

这种模式最让我喜欢的地方在于,它能激励组织对项目进行捐赠——激励就是捐最多的组织会出现在顶级捐赠者名单上。比如说,我本来并不知道Segment是个什么东西,但是在看到他们是Bootstrap的第二大捐赠者之后,我就去查了一下Segment是提供什么服务的。

然而Open Collective并不是这个领域内的唯一玩家。去年GitHub就首次推出了GitHub Sponsors——GitHub内置的开源赞助项目。GitHub在这方面具有相当大的天然竞争优势,因为GitHub本身在过去的十数年中一直是托管开源项目的经典选择。

不过,值得称赞的是,GitHub确实采取了措施来让自己的赞助程序能够与竞争者的并列。比如,现在GitHub上的任何项目都可以创建一个.github / FUNDING.yml文件,你可以在该文件中列出这个仓库所能给出的所有赞助方式,不论这种方式是不是GitHub Sponsors。

如果你试一下,就会发现GitHub会在你的仓库上显示一个“赞助商”按钮,列出了你的用户可以选择的所有赞助方式。例如,core-js 的GitHub库中的过程是这样的:

cd39e9a8c444c94da75d93275bfd2335.png

最后一项服务在上面这张截屏里,也就是Tidelift,该服务具有非常独特的功能。Tidelift是每月约1,500美元的订阅产品,提供他们称之为“托管开源”的服务。在Tidelift的网站中他们将这种服务分为三个部分:

  • 工具。我们提供工具来跟踪你使用的所有依赖项(denpendencies),标记issues,以及执行策略

  • 管理。我们代表你来管理核心的,关键的package,还包括调研并解决issues,这样你就不用亲力亲为了

  • 维护者。为了维护诸多重要的项目,我们会招募维护者,并付钱给他们,这样来从根本上积极预防以及解决问题

我对这种方法怀疑态度,一是因为它感觉上像是一种间接的支持开源维护者的方式,二是因为我认为公司没有足够的动机去订阅。尽管如此,看到有公司在尝试用创新的方法来创建一个不同的开源资金模型,我还是感到很欣慰的。还有一点就是,Tidelift筹集到了4000万美元巨款的资金,所以说确实还是有投资者认为Tidelift的模型具有一些真实潜力的。

总体而言,也许对订阅服务的未来感到乐观的最大依据就是当前竞争对手的数量。更多的竞争者意味着更多的创意,如果背后的经济学原理能正常发挥作用的话,最好的那些创意将会带来越来越多的项目。而随着GitHub参与其中,以及在仓库上提供“赞助者”按钮,有助于确保这些赞助服务一直都保持可见的状态。

我对订阅服务持悲观态度的原因是它们严重依赖于善举。想说服公司捐款并不容易,而即使这些订阅服务提供了一定的激励措施,例如出现在顶级捐助者名单中,我仍然认为,他们需要向公司提供更多东西来跟公司换取现金。

在结束我们对开源资金解决方案的讨论之前,我想就一种你可能想不到的终极选项谈谈。

解决方案3:花钱购买软件

为了写本文,我在做调研时了解了很多有关如何解决开源的财务问题的观点,但其中没有一个包含最简单的经济解决方案:直接让公司为他们使用的软件付费。

我在免费软件和付费软件领域都有很多经验,因为我的职业生涯两种都涉及过,而随着时间的流逝我的观点已经逐渐改变,从坚定地信仰开源,到面对什么时候该为软件付费的问题时更加务实——很大程度上是因为我亲身经历过开源项目的资金困难问题。

从前我参与免费开源的jQuery UI项目有两年之久,并且在看到我们的组件帮助世界各地的Web开发人员们搭建出了更好的应用程序时会引以为豪。但是同时,我还看到,当维护者们失去兴趣,以及赞助商的钱不再够支付账单时,一个项目就会很快消亡。今天,jQuery UI理论上是Linux 基金会的一部分,但该项目的最近一次发布还是在2016年。

在这之后,我为免费且开源的NativeScript项目工作了五年,而且我们的框架已帮助众多的JavaScript开发人员搭建出了iOS及Android应用程序。但是在维护NativeScript时,我明白了,当不能直接赚钱时,要为框架筹集资金是多么困难,尤其是你的框架还要与Facebook的React Native和Google的Flutter之类的框架竞争,而这些公司似乎有无尽的预算,并且能接受收入为零。

与我在jQuery UI和NativeScript所做的工作形成鲜明对比的是,在过去的几个月中,我换到了KendoReact团队工作,在这个团队中我们向React开发人员出售高级UI组件。在jQuery UI和NativeScript的时候,我很难解释项目的财务状况,而KendoReact团队的情况就非常简单了:开发人员付钱给我们,而作为回报,我们向他们提供一套很棒的UI组件。

c6173e59a52097636ab3e67c57211feb.png

kendo-react UI组件的示例程序:https://telerik.github.io/kendo-react-finance-portfolio/#/stocks

付费软件有诸多好处。比起在GitHub上随机地找项目,付费能给你提供更多保障——例如保障更新,保障更一致的API,以及保障你在不可避免地遇到问题时可以联系某个公司。

但这并不意味着付费软件是完美的。付费会给社区的建设增加难度,因为你的付费用户永远不可能会像免费用户那么多。而且收款还要求你拥有一些公司的基础设施,这对于小型项目来说可能过于繁复。

由于以上这些原因,我不建议所有的,或者大多数的软件都采取收费措施。开源软件为世界带来了很多好处,并且开源应该继续成为我们开发大多数软件的方式。但是我确实认为付费软件会占有一席之地,而不应被开发人员视为原则错误然后马上拒绝。

在基金会和捐赠这两个途径以外,对软件收费应被视为资助软件项目的另一可行方法。

总结

在当今的软件世界中,开源项目所能提供的价值,与项目能获得的报酬之间存在巨大的脱节。

在这种脱节的刺激下,许多服务应运而生,试图使开源的经济层面更加合理化。基金会可以帮助确保大型开源项目能够继续运行,订阅服务可以帮助规模较小的开源项目维护者能够付得起账单。

我所希望的是,我们可以鼓励公司更多地为自己使用的软件付费。这些付费可以以基金会会员,订阅开源项目等形式来进行,也可以直接通过为软件付款来实现。理想情况下,这一领域的持续创新将有助于简化付款流程,并促进更多公司对使他们受益匪浅的行业进行反哺。如果企业们愿意如此的话,这样我们就能更简单地向朋友和家人们解释开源是怎么回事了。

原文链接:

https://www.telerik.com/blogs/can-we-make-open-source-more-sustainable

作者简介:TJ VanToll,前端开发者,作家,有十年以上的web开发经验,曾在jQuery以及NativeScript团队工作数年。

本文为CSDN翻译文章,转载请注明出处。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/551865.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

教资计算机科学与技术教资,教资笔试查成绩啦!广师大未来教师们又前进一步...

原标题:教资笔试查成绩啦!广师大未来教师们又前进一步这里是今日起考生登录ntce.neea.edu.cn“中小学教师资格考试网”即可查询笔试成绩啦惊不惊喜 意不意外查成绩的人这么多可以看出考取教师资格证已然成为大学生中的“香饽饽”日前,茂名滨海…

控制台启动jar包关闭控制台怎么关java程序_Jpom一款简而轻的低侵入式Java运维、监控软件...

你为什么需要JpomSpringBoot、Jboot等框架开发的项目通常是以Jar的方式在后台运行的,如果只有一两个项目,管理起来不是太麻烦,但是当项目多了以后,管理起来就不是那么方便了,当项目出现问题时,能够通过Jpom…

台式计算机如何双屏显示,电脑怎么分屏?|台式电脑双显示器连接方法

电脑怎么分屏?|台式电脑双显示器连接方法阅读:497时间:2019-08-10 23:24:36随着人们对时间效率的看中,比如在看报表的同时看电影,工作娱乐两不误,如果你也想要这样的工作环境,我们可以给电脑…

解释型语言和编译型语言的区别_从泛型的使用情况看出你对语言的理解程度(2)...

上篇我们提到&#xff1a;Java中的泛型是不可变的&#xff0c;可以通过<? extends E>实现了泛型的协变&#xff0c;<? super E>实现泛型的逆变。从泛型的使用情况看出你对语言的理解程度&#xff08;1&#xff09;今天我们来讲讲泛型单例工厂&#xff0c;在之前的…

泸州职业技术学院计算机单招试题,2021年泸州职业技术学院单招英语考试模拟试题库...

2021年高职单招升学一对一咨询高职单招郭老师:15683905627(微信)单招考试考什么单招专业技能考试文化统考;文化统考科目包括语文、数学、英语、专业综合理论。单招考试形式&#xff1a;专业技能考试文化统考。专业技能考试形式和内容由各专业大类联考委确定。文化统考科目为语文…

sata接口测试软件,如何查看电脑是否支持USB 3.0?Hwinfo32检测SATA端口的方法

Hwinfo32检测SATA端口有很多效用&#xff0c;其中我们查看该SATA是否支持USB 3.0就是一个判断&#xff0c;更多的信息是为了了解SATA目前已经可使用的和在使用的端口情况&#xff0c;具体方法可以查看下文中的方法进行判断。Hwinfo32检测SATA端口的方法&#xff1a;1、直接下载…

mfc try catch 捕获并显示_你的异常捕获够优雅不?求你别只会try{...} catch{...}了

文章来源 | cnblogs.com/jurendage/p/11255197.html作者 | 巨人大哥软件开发过程中&#xff0c;不可避免的是需要处理各种异常&#xff0c;就我自己来说&#xff0c;至少有一半以上的时间都是在处理各种异常情况&#xff0c;所以代码中就会出现大量的try {...} catch {...} fin…

五年级计算机教材内容,五年级计算机教学计划

五年级计算机教学计划教育结构不断发生变革&#xff0c;现代教育和教学理论主张对教学计划的结构实行改革。下面是小编为您整理的关于五年级计算机教学计划的相关资料&#xff0c;欢迎阅读&#xff01;五年级计算机教学计划 范例1一、教材分析选用的教材是&#xff0c;浙江摄影…

linux添加用户命令_为Linux的cp和mv命令添加进度条

cp和mv可能是大家日常中使用最多的Linux命令之一。但是有一个突出的问题是这两个命令都不会有任何提示信息&#xff0c;这在操作大文件时候只能干等。可能大家对此已经习以为常&#xff0c;但是其实上也有解决解决方法&#xff0c;本文我们就介绍一个Gnu Coreutils(cp和mv的源代…

unsigned long long 溢出 乘_Java整数相加溢出怎么办?Java8一步搞定

问题在之前刷题的时候遇见一个问题&#xff0c;需要解决int相加后怎么判断是否溢出&#xff0c;如果溢出就返回Integer.MAX_VALUE解决方案JDK8已经帮我们实现了Math下&#xff0c;不得不说这个方法是在StackOverflow找到了的&#xff0c;确实比国内一些论坛好多了~加法public s…

setstate是同步还是异步_谈谈 IO模型:同步、异步、阻塞、非阻塞

同步/异步、阻塞/非阻塞 说的是一回事儿吗&#xff1f;同步/异步、阻塞/非阻塞 你能通俗易懂的讲清楚吗&#xff1f;Java 中的 BIO、NIO、AIO 你了解吗&#xff1f;Socket 编程你还会吗&#xff1f;Linux 操作系统的 IO 模型你能讲讲吗&#xff1f;01. 生活中的同步/异步、阻塞…

md5会重复吗_如何优雅地处理重复请求(并发请求)

点击上方“服务端思维”&#xff0c;选择“设为星标”回复”669“获取独家整理的精选资料集回复”加群“加入全国服务端高端社群「后端圈」利用唯一请求编号去重你可能会想到的是&#xff0c;只要请求有唯一的请求编号&#xff0c;那么就能借用Redis做这个去重——只要这个唯一…

计算机二级excel数据有效性,原来Excel数据有效性还可以这样做——制作二级下拉菜单...

很多时候&#xff0c;在进行设置数据有效性时&#xff0c;我们希望可以根据前一单元格的内容&#xff0c;使用动态的数据选项。如下图为一个员工信息表&#xff0c;现希望在F列制作下拉列表&#xff0c;下拉列表的内容根据E列输入的省份变化而变化&#xff0c;如在E2单元格中输…

win7系统安装信息服务器不可用怎么办,Win7系统下iis服务器应用程序不可用怎么办?...

Win7系统用户在使用电脑系统时都有自带可以方便用户们搭建网站的iis服务器。不过也有Win7系统用户反映在电脑系统里添加或删除组件时iis服务器无法添加&#xff0c;还弹跳出了应用程序不可用的提示窗口&#xff0c;这使用户非常苦恼&#xff0c;那么Win7系统下iis服务器应用程序…

++ 多核cpu 并行_一文读懂什么是多核并行计算(三)

导读&#xff1a;面向应用工程师的商业软件咨询、自研软件定制开发服务的仿真公众号&#xff0c;点击关注进入菜单&#xff0c;查看更多精彩内容。(三)如何实现多核并行计算呢&#xff1f;了解了多核、多Machine、多Rack后&#xff0c;我可以看一下软件(程序)是如何对这些资源进…

服务器放行6in4协议,最简单的接入IPv6网络的方法 – 6in4隧道

很多大学的校园网启用了IPv6&#xff0c;并且建设了很多IPv6专享的资源。毕业离校&#xff0c;由于现在的网络运营商绝大部分尚未支持IPv6&#xff0c;所以那些资源也就离我们远去了。机缘巧合之下&#xff0c;我知道了&#xff0c;原来我们可以这样接入IPv6网络。目前接入IPv6…

梦幻群侠传5帮派修炼_梦幻西游:2020年十大更新回顾 法连不秒空和连续战斗修复...

今年梦幻西游有过很多重大的维护更新&#xff0c;其中不少更新都对玩家产生中重大的影响&#xff0c;比如说法术连击第二下不会秒空气&#xff0c;以及副本的迭代等等&#xff0c;今天就来盘点下2020年梦幻西游的十大更新!一、各类副本优化迭代今年优化了多个副本&#xff0c;如…

前端图片上坐标连线_前端图形学(十三)——弹跳运动的深入之傲娇的小球

欢迎来到【畅哥聊技术】前端图形学相关技术文章&#xff0c;更多精彩内容持续更新中,敬请关注。前面我们说到了小球的弹跳运动&#xff0c;通过一个方向的加速度和摩擦力去影响小球的动画&#xff0c;其目标点也是一个固定不变的&#xff0c;似乎有些单调。那么我们今天继续小球…

服务器微信了早上好,微信早晨好问候语句动态图片 早上好发给朋友的微信早安问候语简短...

原标题&#xff1a;微信早晨好问候语句动态图片 早上好发给朋友的微信早安问候语简短嘀嘀嘀嘀&#xff0c;我的短信到啦。用关心方式&#xff0c;要你多注意休息&#xff1b;用体贴方式&#xff0c;要你轻松而快乐&#xff1b;用祝福方式&#xff0c;要你一切都过的好&#xff…

c语言调用createthread线程的头文件_易语言API多线程总汇

【thread】 即&#xff0c;线程&#xff0c;是进程中某一顺序的控制流&#xff0c;在单个程序中同时运行多个线程完成不同工作&#xff0c;称为多线程。易语言多线程理解&#xff1a;进程是一个可执行程序&#xff0c;由私有虚拟地址空间、代码、数据和其它操作系统资源组成&am…