最近测试一个ftp下载服务相关项目,根据以往经验,与服务器diskio,netio性能有很直接的关系
之前只是听说过iostat命令,今天具体百度了下,学习下iostat命令的详细使用方法
参考:http://aofengblog.blog.163.com/blog/static/6317021201331365716412/
感谢傲风大神分享~
敲 iostat
[root@localhost test]# iostat Linux 2.6.32-279.el6.x86_64 (localhost.localdomain) 2013年12月05日 _x86_64_ (2 CPU) avg-cpu: %user %nice %system %iowait %steal %idle 0.02 0.00 0.07 0.00 0.00 99.90 Device: tps Blk_read/s Blk_wrtn/s Blk_read Blk_wrtn sda 0.28 2.12 35.10 2917532 48306386 dm-0 0.41 1.77 2.96 2432042 4074312 dm-1 0.00 0.00 0.00 2576 0 dm-2 4.06 0.35 32.14 476490 44232056
输入信息中每个信息的意义如下:
cpu的统计信息,如果是多cpu系统,显示的所有cpu的平均统计信息。
- %user:用户进程消耗cpu的比例
- %nice:用户进程优先级调整消耗的cpu比例
- %sys:系统内核消耗的cpu比例
- %iowait:等待磁盘io所消耗的cpu比例
- %idle:闲置cpu的比例(不包括等待磁盘io的s)
磁盘的统计信息:
- Device:设备的名称
- Tps:设备上每秒的io传输(可能多个io被组成一个io)的次数
- Blk_read/s:每秒从设备读取block(kernel 2.4以上,block=512byte)的数量
- Blk_wrtn/s:每秒写到设备block(kernel 2.4以上,block=512byte)的数量
- Blk_read:间隔时间内,从设备读取总的block数量
- Blk_wrtn:间隔时间内,写到设备总的block数量
敲 iostat --help
[root@localhost test]# iostat --help 用法: iostat [ 选项 ] [ <时间间隔> [ <次数> ] ] 选项: [ -c ] [ -d ] [ -N ] [ -n ] [ -h ] [ -k | -m ] [ -t ] [ -V ] [ -x ] [ -z ] [ <设备> [...] | ALL ] [ -p [ <设备> [,...] | ALL ] ]
下边详细探究每个参数的意义
-c参数(与-d互斥)
输出CPU统计信息
敲 iostat -c
[root@localhost test]# iostat -c Linux 2.6.32-279.el6.x86_64 (localhost.localdomain) 2013年12月05日 _x86_64_ (2 CPU) avg-cpu: %user %nice %system %iowait %steal %idle 0.02 0.00 0.07 0.00 0.00 99.90
-d参数(与-c互斥)
输出设备和分区的I/O统计信息
敲 iostat -d
[root@localhost test]# iostat -d Linux 2.6.32-279.el6.x86_64 (localhost.localdomain) 2013年12月05日 _x86_64_ (2 CPU) Device: tps Blk_read/s Blk_wrtn/s Blk_read Blk_wrtn sda 0.28 2.14 37.31 2944012 51377066 dm-0 0.41 1.79 2.96 2458162 4077056 dm-1 0.00 0.00 0.00 2576 0 dm-2 4.34 0.35 34.35 476490 47299992
-N参数(不常用)
暂时没搞懂,貌似是显示磁盘分区信息?详细目录?差不多资料,有待研究……
敲 iostat -N
[root@localhost test]# iostat -N Linux 2.6.32-279.el6.x86_64 (localhost.localdomain) 2013年12月05日 _x86_64_ (2 CPU) avg-cpu: %user %nice %system %iowait %steal %idle 0.02 0.00 0.07 0.00 0.00 99.90 Device: tps Blk_read/s Blk_wrtn/s Blk_read Blk_wrtn sda 0.29 2.14 38.17 2949236 52559330 VolGroup-lv_root 0.41 1.79 2.96 2463370 4077976 VolGroup-lv_swap 0.00 0.00 0.00 2576 0 VolGroup-lv_home 4.44 0.35 35.21 476506 48481336
-n 参数(不常用)
查看NFS上流量信息
敲 iostat -n
[root@localhost test]# iostat -n Linux 2.6.32-279.el6.x86_64 (localhost.localdomain) 2013年12月05日 _x86_64_ (2 CPU) Filesystem: rBlk_nor/s wBlk_nor/s rBlk_dir/s wBlk_dir/s rBlk_svr/s wBlk_svr/s ops/s rops/s wops/s
-h参数(不常用)
可读性更好的NFS目录信息统计
敲 iostat -h
[root@localhost test]# iostat -h Linux 2.6.32-279.el6.x86_64 (localhost.localdomain) 2013年12月05日 _x86_64_ (2 CPU) avg-cpu: %user %nice %system %iowait %steal %idle 0.02 0.00 0.07 0.00 0.00 99.90 Device: tps Blk_read/s Blk_wrtn/s Blk_read Blk_wrtn sda 0.29 2.14 38.90 2949636 53573802 dm-0 0.41 1.79 2.96 2463770 4078784 dm-1 0.00 0.00 0.00 2576 0 dm-2 4.53 0.35 35.93 476506 49495000
-k -m参数(这个用的多)
-k 用“kbytes/秒”代替“块/秒”显示统计信息
-m 用“mbytes/秒”代替“块/秒”显示统计信息
敲 iostat -k(-m)
[root@localhost test]# iostat -k Linux 2.6.32-279.el6.x86_64 (localhost.localdomain) 2013年12月05日 _x86_64_ (2 CPU) avg-cpu: %user %nice %system %iowait %steal %idle 0.02 0.00 0.08 0.00 0.00 99.90 Device: tps kB_read/s kB_wrtn/s kB_read kB_wrtn sda 0.29 1.07 19.65 1474994 27071613 dm-0 0.41 0.89 1.48 1232061 2039736 dm-1 0.00 0.00 0.00 1288 0 dm-2 4.59 0.17 18.17 238253 25031868 [root@localhost test]# iostat -m Linux 2.6.32-279.el6.x86_64 (localhost.localdomain) 2013年12月05日 _x86_64_ (2 CPU) avg-cpu: %user %nice %system %iowait %steal %idle 0.02 0.00 0.08 0.00 0.00 99.90 Device: tps MB_read/s MB_wrtn/s MB_read MB_wrtn sda 0.29 0.00 0.02 1440 26440 dm-0 0.41 0.00 0.00 1203 1991 dm-1 0.00 0.00 0.00 1 0 dm-2 4.59 0.00 0.02 232 24448
-t参数(不常用)
显示NFS目录统计信息
敲 iostat -t
[root@localhost nmon_x86_64_rhel4]# iostat -t Linux 2.6.32-279.el6.x86_64 (localhost.localdomain) 2014Ū07Ղ04ɕ _x86_64_ (1 CPU) 2014Ū07Ղ04ɕ 15ʱ22·Ա1ī avg-cpu: %user %nice %system %iowait %steal %idle 0.04 0.00 0.29 0.01 0.00 99.66 Device: tps Blk_read/s Blk_wrtn/s Blk_read Blk_wrtn sda 0.37 33.27 23.62 85820646 60944050 dm-0 0.29 1.02 2.02 2625506 5220000 dm-1 0.00 0.00 0.00 3096 0 dm-2 2.84 32.24 21.60 83183690 55724008
-V参数
显示版本号并通出
敲 iostat -V
[root@localhost nmon_x86_64_rhel4]# iostat -V sysstat °汾 9.0.4 (C) Sebastien Godard (sysstat <at> orange.fr)
-x参数(这个也用的多)
显示扩展统计信息
敲 iostat -x
[root@localhost nmon_x86_64_rhel4]# iostat -x Linux 2.6.32-279.el6.x86_64 (localhost.localdomain) 2014Ū07Ղ04ɕ _x86_64_ (1 CPU) avg-cpu: %user %nice %system %iowait %steal %idle 0.04 0.00 0.29 0.01 0.00 99.66 Device: rrqm/s wrqm/s r/s w/s rsec/s wsec/s avgrq-sz avgqu-sz await svctm %util sda 0.01 2.76 0.18 0.19 33.29 23.62 154.05 0.00 1.53 0.66 0.02 dm-0 0.00 0.00 0.04 0.25 1.02 2.02 10.34 0.00 1.33 0.51 0.01 dm-1 0.00 0.00 0.00 0.00 0.00 0.00 8.00 0.00 2.23 0.78 0.00 dm-2 0.00 0.00 0.14 2.70 32.27 21.60 18.97 0.03 10.26 0.03 0.01
每个输出消息含义:
- rrqm/s: 每秒对该设备的读请求被合并次数,文件系统会对读取同块(block)的请求进行合并
- wrqm/s: 每秒对该设备的写请求被合并次数
- r/s: 每秒完成的读次数
- w/s: 每秒完成的写次数
- rkB/s: 每秒读数据量(kB为单位)
- wkB/s: 每秒写数据量(kB为单位)
- avgrq-sz:平均每次IO操作的数据量(扇区数为单位)
- avgqu-sz: 平均等待处理的IO请求队列长度
- await: 平均每次IO请求等待时间(包括等待时间和处理时间,毫秒为单位)
- svctm: 平均每次IO请求的处理时间(毫秒为单位)
- %util: 采用周期内用于IO操作的时间比率,即IO队列非空的时间比率
干介绍有些枯燥
下面列举写常见用法
iostat -d -k 2
kb/s显示磁盘信息,每2s刷新一次
[root@localhost nmon_x86_64_rhel4]# iostat -d -k 2 Linux 2.6.32-279.el6.x86_64 (localhost.localdomain) 2014Ū07Ղ04ɕ _x86_64_ (1 CPU) Device: tps kB_read/s kB_wrtn/s kB_read kB_wrtn sda 0.37 16.71 11.81 43115523 30473465 dm-0 0.29 0.51 1.01 1312813 2610764 dm-1 0.00 0.00 0.00 1548 0 dm-2 2.84 16.20 10.80 41796985 27862680 Device: tps kB_read/s kB_wrtn/s kB_read kB_wrtn sda 20.27 2594.59 0.00 3840 0 dm-0 0.00 0.00 0.00 0 0 dm-1 0.00 0.00 0.00 0 0 dm-2 20.27 2594.59 0.00 3840 0 ^C
iostat -dkx 1 10
kb/s显示磁盘统计信息及扩展信息,每1s刷新 ,刷新10次结束
[root@localhost nmon_x86_64_rhel4]# iostat -dkx 1 10 Linux 2.6.32-279.el6.x86_64 (localhost.localdomain) 2014Ū07Ղ04ɕ _x86_64_ (1 CPU) Device: rrqm/s wrqm/s r/s w/s rkB/s wkB/s avgrq-sz avgqu-sz await svctm %util sda 0.01 2.76 0.18 0.19 16.85 11.81 154.47 0.00 1.53 0.66 0.02 dm-0 0.00 0.00 0.04 0.25 0.51 1.01 10.34 0.00 1.33 0.51 0.01 dm-1 0.00 0.00 0.00 0.00 0.00 0.00 8.00 0.00 2.23 0.78 0.00 dm-2 0.00 0.00 0.14 2.70 16.34 10.80 19.11 0.03 10.26 0.03 0.01 Device: rrqm/s wrqm/s r/s w/s rkB/s wkB/s avgrq-sz avgqu-sz await svctm %util sda 0.00 0.00 36.76 1.47 5158.82 5.88 270.15 0.03 0.77 0.69 2.65 dm-0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 dm-1 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 dm-2 0.00 0.00 36.76 1.47 5158.82 5.88 270.15 0.03 0.77 0.69 2.65 Device: rrqm/s wrqm/s r/s w/s rkB/s wkB/s avgrq-sz avgqu-sz await svctm %util sda 0.00 0.00 19.72 0.00 2507.04 0.00 254.29 0.01 0.57 0.50 0.99 dm-0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 dm-1 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 dm-2 0.00 0.00 19.72 0.00 2507.04 0.00 254.29 0.01 0.57 0.50 0.99
就给出了3次刷新数,一样的东西,太长了大家就看着有点乱是吧
实例分析
[root@localhost nmon_x86_64_rhel4]# iostat -d -k 1 10|grep dm-2 Linux 2.6.32-279.el6.x86_64 (localhost.localdomain) 2014Ū07Ղ04ɕ _x86_64_ (1 CPU) Device: tps kB_read/s kB_wrtn/s kB_read kB_wrtn dm-2 2.84 16.47 10.80 42504905 27863480 dm-2 20.25 1777.22 25.32 1404 20 dm-2 4.88 624.39 0.00 512 0 dm-2 0.00 0.00 0.00 0 0 dm-2 0.00 0.00 0.00 0 0 dm-2 5.00 640.00 0.00 512 0 dm-2 0.00 0.00 0.00 0 0 dm-2 10.00 640.00 20.00 512 16 dm-2 0.00 0.00 0.00 0 0 dm-2 2.47 316.05 0.00 256 0
上面的数据说明:dm-2分区10s内 每秒传输次数约 4,;每秒磁盘读取约961kb,写入约5.6kb
[root@localhost nmon_x86_64_rhel4]# iostat -d -k -x 1 10|grep dm-2 Linux 2.6.32-279.el6.x86_64 (localhost.localdomain) 2014Ū07Ղ04ɕ _x86_64_ (1 CPU) Device: rrqm/s wrqm/s r/s w/s rkB/s wkB/s avgrq-sz avgqu-sz await svctm %util dm-2 0.00 0.00 0.14 2.70 16.54 10.80 19.25 0.03 10.25 0.03 0.01 dm-2 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 dm-2 0.00 0.00 0.00 5.06 0.00 20.25 8.00 0.00 0.00 0.00 0.00 dm-2 0.00 0.00 3.61 0.00 462.65 0.00 256.00 0.00 0.33 0.33 0.12 dm-2 0.00 0.00 2.33 0.00 297.67 0.00 256.00 0.00 0.50 0.50 0.12 dm-2 0.00 0.00 3.90 0.00 498.70 0.00 256.00 0.00 0.33 0.33 0.13 dm-2 0.00 0.00 3.95 0.00 505.26 0.00 256.00 0.00 0.67 0.67 0.26 dm-2 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 dm-2 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 dm-2 0.00 0.00 3.57 0.00 457.14 0.00 256.00 0.00 0.33 0.33 0.12
这里重点看 await %util
上面数据说明:磁盘平均响应时间约1ms(但是有峰值10ms的存在,建议长时间统计,有待继续观察);磁盘使用率不足1%,磁盘响应正常
由此看来,瓶颈不在磁盘读写上,或者你的压力还不够!
个人拙见,有不对的地方,还请大神指教!
补充下-x参数个含义分析方法:
参考http://www.cnblogs.com/ggjucheng/archive/2013/01/13/2858810.html
rrqm/s:每秒这个设备相关的读取请求有多少被Merge了(当系统调用需要读取数据的时候,VFS将请求发到各个FS,如果FS发现不同的读取请求读取的是相同Block的数据,FS会将这个请求合并Merge);wrqm/s:每秒这个设备相关的写入请求有多少被Merge了。 rsec/s:每秒读取的扇区数; wsec/:每秒写入的扇区数。 rKB/s:The number of read requests that were issued to the device per second; wKB/s:The number of write requests that were issued to the device per second; avgrq-sz 平均请求扇区的大小 avgqu-sz 是平均请求队列的长度。毫无疑问,队列长度越短越好。 await: 每一个IO请求的处理的平均时间(单位是微秒毫秒)。这里可以理解为IO的响应时间,一般地系统IO响应时间应该低于5ms,如果大于10ms就比较大了。 这个时间包括了队列时间和服务时间,也就是说,一般情况下,await大于svctm,它们的差值越小,则说明队列时间越短,反之差值越大,队列时间越长,说明系统出了问题。 svctm 表示平均每次设备I/O操作的服务时间(以毫秒为单位)。如果svctm的值与await很接近,表示几乎没有I/O等待,磁盘性能很好,如果await的值远高于svctm的值,则表示I/O队列等待太长, 系统上运行的应用程序将变慢。 %util: 在统计时间内所有处理IO时间,除以总共统计时间。例如,如果统计间隔1秒,该设备有0.8秒在处理IO,而0.2秒闲置,那么该设备的%util = 0.8/1 = 80%,所以该参数暗示了设备的繁忙程度 。一般地,如果该参数是100%表示设备已经接近满负荷运行了(当然如果是多磁盘,即使%util是100%,因为磁盘的并发能力,所以磁盘使用未必就到了瓶颈)。
相关推荐
6. **系统监控**:使用工具如htop、iostat、vmstat等监控系统性能。 **技术调研** 这部分可能包含对最新Go语言版本的特性分析、框架评估(如Gin、Beego等Web框架),以及与其他编程语言或技术(如Docker、...
在全球建筑行业不断追求节能与智能化发展的浪潮中,变风量(VAV)系统市场正展现出蓬勃的发展潜力。根据 QYResearch 报告出版商的深入调研统计,预计到 2031 年,全球变风量(VAV)系统市场销售额将飙升至 1241.3 亿元,在 2025 年至 2031 年期间,年复合增长率(CAGR)为 5.8%。这一令人瞩目的数据,不仅彰显了 VAV 系统在当今建筑领域的重要地位,更预示着其未来广阔的市场前景。 变风量系统的起源可追溯到 20 世纪 60 年代的美国。它犹如建筑空调系统中的 “智能管家”,能够敏锐地感知室内负荷或室内所需参数的变化,通过维持恒定的送风温度,自动、精准地调节空调系统的送风量,从而确保室内各项参数始终满足空调系统的严格要求。从系统构成来看,变风量系统主要由四个基本部分协同运作。变风量末端设备,包括 VAV 箱和室温控制器,如同系统的 “神经末梢”,负责接收室内环境变化的信号并做出初步响应;空气处理及输送设备则承担着对空气进行净化、加热、冷却等处理以及高效输送的重任;风管系统,涵盖新风、排风、送风、回风等管道,构建起了空气流通的 “高速公路”;而自动控制系统宛
资源内项目源码是来自个人的毕业设计,代码都测试ok,包含源码、数据集、可视化页面和部署说明,可产生核心指标曲线图、混淆矩阵、F1分数曲线、精确率-召回率曲线、验证集预测结果、标签分布图。都是运行成功后才上传资源,毕设答辩评审绝对信服的保底85分以上,放心下载使用,拿来就能用。包含源码、数据集、可视化页面和部署说明一站式服务,拿来就能用的绝对好资源!!! 项目备注 1、该资源内项目代码都经过测试运行成功,功能ok的情况下才上传的,请放心下载使用! 2、本项目适合计算机相关专业(如计科、人工智能、通信工程、自动化、电子信息等)的在校学生、老师或者企业员工下载学习,也适合小白学习进阶,当然也可作为毕设项目、课程设计、大作业、项目初期立项演示等。 3、如果基础还行,也可在此代码基础上进行修改,以实现其他功能,也可用于毕设、课设、作业等。 下载后请首先打开README.txt文件,仅供学习参考, 切勿用于商业用途。
内容概要:本文探讨了ChatGPT这种高级语音模式的人工智能聊天机器人与用户的互动对其情绪健康的影响。研究采用了两种互补的方法:大规模平台数据分析和随机对照试验(RCT)。平台数据部分通过对超过400万次对话进行隐私保护的大规模自动化分析以及对4000多名用户的调查,揭示了高频率使用者表现出更多的情感依赖和较低的社会交往意愿。RCT部分则通过近1000名参与者为期28天的研究,发现语音模型相较于文本模型能带来更好的情绪健康效果,但长时间使用可能导致负面后果。此外,初始情绪状态较差的用户在使用更具吸引力的语音模型时,情绪有所改善。 适合人群:对人机交互、情感计算和社会心理学感兴趣的科研人员和技术开发者。 使用场景及目标:本研究旨在为AI聊天机器人的设计提供指导,确保它们不仅能满足任务需求,还能促进用户的心理健康。同时,也为政策制定者提供了关于AI伦理使用的思考。 其他说明:研究强调了长期使用AI聊天机器人可能带来的复杂心理效应,特别是对于那些已经感到孤独或社交孤立的人来说,过度依赖可能会加剧这些问题。未来的研究应该更加关注这些极端情况下的用户体验。
Java 反射(Reflection)是一种强大的机制,允许程序在运行时检查和操作类的成员变量和方法。然而,传统的 `setAccessible(true)` 方式虽然便捷,但存在安全性问题,并且性能相对较低。在 Java 7 引入 `MethodHandle` 后,我们可以通过 `MethodHandles.Lookup.findVirtual()` 提供更优雅、高效的方式来访问对象属性。本文将对比这两种反射方式,并分析它们的优缺点。
loongdomShop.tar.gz
内容概要:本文探讨了不同交互模式(文本、中性语音、吸引人语音)和对话类型(开放式、非个人化、个人化)对聊天机器人使用者的心理社会效果(如孤独感、社交互动、情感依赖、不当使用)的影响。研究表明,在初期阶段,语音型聊天机器人比文本型更能缓解孤独感并减少情感依赖,但随着每日使用时间增加,这种优势逐渐消失,尤其是对于中性语音聊天机器人。此外,个人话题对话略微增加了孤独感,而非个人话题则导致更高的情感依赖。总体而言,高频率使用聊天机器人的用户表现出更多的孤独感、情感依赖和不当使用,同时减少了真实人际交往。研究还发现,某些个体特征(如依恋倾向、情绪回避)使用户更容易受到负面影响。 适合人群:心理学家、社会学家、人工智能研究人员以及关注心理健康和人机交互的专业人士。 使用场景及目标:①帮助理解不同类型聊天机器人对用户心理健康的潜在影响;②为设计更健康的人工智能系统提供指导;③制定政策和规范,确保聊天机器人的安全和有效使用。 其他说明:研究强调了进一步探索聊天机器人管理情感内容而不引发依赖或替代人际关系的重要性,呼吁更多跨学科的研究来评估长期影响。
MP4575GF-Z MP4575 TSSOP-20 降压型可调DC-DC电源芯片
界面设计_SwiftUI_习惯养成_项目管理_1742850611.zip
免安装版的logic软件包。支持波形实时查看。内含驱动文件。
1. **系统名称**:学生毕业离校系统 2. **技术栈**:Java技术、MySQL数据库、Spring Boot框架、B/S架构、Tomcat服务器、Eclipse开发环境 3. **系统功能**: - **管理员功能**:首页、个人中心、学生管理、教师管理、离校信息管理、费用结算管理、论文审核管理、管理员管理、留言板管理、系统管理。 - **学生功能**:首页、个人中心、费用结算管理、论文审核管理、我的收藏管理。 - **教师功能**:首页、个人中心、学生管理、离校信息管理、费用结算管理、论文审核管理。
配套文章:https://blog.csdn.net/gust2013/article/details/139608432
蓝凌OA系统V15.0管理员手册
资源内项目源码是来自个人的毕业设计,代码都测试ok,包含源码、数据集、可视化页面和部署说明,可产生核心指标曲线图、混淆矩阵、F1分数曲线、精确率-召回率曲线、验证集预测结果、标签分布图。都是运行成功后才上传资源,毕设答辩评审绝对信服的保底85分以上,放心下载使用,拿来就能用。包含源码、数据集、可视化页面和部署说明一站式服务,拿来就能用的绝对好资源!!! 项目备注 1、该资源内项目代码都经过测试运行成功,功能ok的情况下才上传的,请放心下载使用! 2、本项目适合计算机相关专业(如计科、人工智能、通信工程、自动化、电子信息等)的在校学生、老师或者企业员工下载学习,也适合小白学习进阶,当然也可作为毕设项目、课程设计、大作业、项目初期立项演示等。 3、如果基础还行,也可在此代码基础上进行修改,以实现其他功能,也可用于毕设、课设、作业等。 下载后请首先打开README.txt文件,仅供学习参考, 切勿用于商业用途。
mips-gcc520-glibc222编译工具链.zip
app开发
内容概要:本文档详细介绍了Swift编程语言的基础知识,涵盖语言特点、基础语法、集合类型、控制流、函数定义、面向对象编程、可选类型、错误处理、协议与扩展以及内存管理等方面的内容。此外还简要提及了Swift与UIKit/SwiftUI的关系,并提供了进一步学习的资源推荐。通过这份文档,读者可以全面了解Swift的基本概念及其在iOS/macOS/watchOS/tvOS平台的应用开发中的使用方法。 适合人群:初学者或者希望从其他编程语言转向Swift的开发者。 使用场景及目标:帮助读者快速上手Swift编程,掌握其基本语法和特性,能够独立完成简单的程序编写任务,为进一步学习高级主题如并发编程、图形界面设计打下坚实的基础。 阅读建议:由于Swift是一门现代化的语言,拥有许多独特的特性和最佳实践方式,在学习过程中应当多加练习并尝试理解背后的原理。同时利用提供的官方文档和其他辅助材料加深印象。
资源内项目源码是来自个人的毕业设计,代码都测试ok,包含源码、数据集、可视化页面和部署说明,可产生核心指标曲线图、混淆矩阵、F1分数曲线、精确率-召回率曲线、验证集预测结果、标签分布图。都是运行成功后才上传资源,毕设答辩评审绝对信服的保底85分以上,放心下载使用,拿来就能用。包含源码、数据集、可视化页面和部署说明一站式服务,拿来就能用的绝对好资源!!! 项目备注 1、该资源内项目代码都经过测试运行成功,功能ok的情况下才上传的,请放心下载使用! 2、本项目适合计算机相关专业(如计科、人工智能、通信工程、自动化、电子信息等)的在校学生、老师或者企业员工下载学习,也适合小白学习进阶,当然也可作为毕设项目、课程设计、大作业、项目初期立项演示等。 3、如果基础还行,也可在此代码基础上进行修改,以实现其他功能,也可用于毕设、课设、作业等。 下载后请首先打开README.txt文件,仅供学习参考, 切勿用于商业用途。
资源内项目源码是来自个人的毕业设计,代码都测试ok,包含源码、数据集、可视化页面和部署说明,可产生核心指标曲线图、混淆矩阵、F1分数曲线、精确率-召回率曲线、验证集预测结果、标签分布图。都是运行成功后才上传资源,毕设答辩评审绝对信服的保底85分以上,放心下载使用,拿来就能用。包含源码、数据集、可视化页面和部署说明一站式服务,拿来就能用的绝对好资源!!! 项目备注 1、该资源内项目代码都经过测试运行成功,功能ok的情况下才上传的,请放心下载使用! 2、本项目适合计算机相关专业(如计科、人工智能、通信工程、自动化、电子信息等)的在校学生、老师或者企业员工下载学习,也适合小白学习进阶,当然也可作为毕设项目、课程设计、大作业、项目初期立项演示等。 3、如果基础还行,也可在此代码基础上进行修改,以实现其他功能,也可用于毕设、课设、作业等。 下载后请首先打开README.txt文件,仅供学习参考, 切勿用于商业用途。
资源内项目源码是来自个人的毕业设计,代码都测试ok,包含源码、数据集、可视化页面和部署说明,可产生核心指标曲线图、混淆矩阵、F1分数曲线、精确率-召回率曲线、验证集预测结果、标签分布图。都是运行成功后才上传资源,毕设答辩评审绝对信服的保底85分以上,放心下载使用,拿来就能用。包含源码、数据集、可视化页面和部署说明一站式服务,拿来就能用的绝对好资源!!! 项目备注 1、该资源内项目代码都经过测试运行成功,功能ok的情况下才上传的,请放心下载使用! 2、本项目适合计算机相关专业(如计科、人工智能、通信工程、自动化、电子信息等)的在校学生、老师或者企业员工下载学习,也适合小白学习进阶,当然也可作为毕设项目、课程设计、大作业、项目初期立项演示等。 3、如果基础还行,也可在此代码基础上进行修改,以实现其他功能,也可用于毕设、课设、作业等。 下载后请首先打开README.txt文件,仅供学习参考, 切勿用于商业用途。