社区编辑申请
注册/登录
技术迷途者指南:我有问题,你有解吗?丨T群话 原创
开发 大数据 运维
在日常工作中,我们可能会遇到各种技术问题,比如运维、开发、框架、操作系统等领域,不同的技术人,碰到的难题也不尽相同。

在日常工作中,我们可能会遇到各种技术问题,比如运维、开发、框架、操作系统等领域,不同的技术人,碰到的难题也不尽相同。为了帮助大家更好的解决问题,51CTO技术交流群针对一些技术问题展开了深入的讨论交流。51CTO对其中精彩问答进行了整理,并通过文章的形式呈现给广大技术人,希望能对大家有所帮助。

后续我们也会定期整理一些常见问题和大家分享,同时也欢迎大家提问或留言,快来看看有没有遇到同样的问题吧~

编程语言类

Q:Java 里不能按引用传数值类型吗?也就是 Java 里有没有 C# 的 ref 关键字?private void changev(int t){t++;},如何通过改变参数关键字让这个 t 改变的效果传出去?

A:不能。这个是 Java 的非常优雅的特性,面向对象的编程中是采用方法重载的方式进行解决的。类下面再增加一个 private void changev(double t){t++;} , 这样传入 int 或者 double 类型的时候,系统会自动根据传入类型选择对应的方法。

深入理解Java虚拟机里面讲过这个。以前面试题容易出现,方法相同,传入类型不同,double  int long,传入short执行那个方法。

方法重载,其实就是面向对象的基础特性。这个 int 就相当于 out 关键字。这比 out 关键字,这种编程方式更优雅,更简约。

 

可以静下心来看看 Java 基础和面向对象的编程思想,做为BAT主流的后台编程语言,肯定有它存在的道理。

开发类

Q1:PHP脚本在执行的时候抛出了这个错误:double free or corruption (out),请问如何解决?

A:直接原因是空指针多次释放,要看看程序哪一步调用出问题了,打断点看看;调用 mq时出问题,要看调用过程是否正确,查查 api,配合断点,rmq 有些功能是需要插件的,这个要确认。如果是在本地正常,跑到线上就不正常,那就 try catch 打日志。只在线上出问题,大概率是有不符合预期的数据格式。

Q2:是否熟悉Java agent机制和ASM?agent attach到进程B后,B在回调前拿到的已加载类是对的,回调后拿到的classname很多是null?

 

A:是因为跨进程导致,不是一个进程了。如果跨进程了,你在新的进程中,需要重新加载。进程间和程序间是一样的,尤其对于Java,进程间还能涉及到类问题?应该是通信问题,如果问题成立,只能是线程。

ASM的解析类似于SAX解析XML文件,相比于其它方式比如CGLIB,它的优势在于性能更高,在Spring中都是使用的cglib动态代理,而cglib本身就是使用ASM。

利用ASM可以获得class文件的详细信息:比如类名、父类名、接口、成员名、方法参数名、局部变量名、元数据等。

还可以对class文件进行动态修改,比如增加、删除、修改某个类的方法。

CGLIB是对ASM的封装,简化ASM的操作,降低ASM的使用门槛。

框架类

Q:QListWidget  Item 排序方式是什么样的?能否介绍下QListWidget 的排序原理?

A:QListWidget 使用 DisplayRole(项目的文本)进行排序,并调用 QString :: localeAwareCompare。要覆盖默认值,可以更改使用的语言环境(请参阅 QLocale),或者让您自己的 QListWidgetItem 子类重新实现 QListWidgetItem::operator<,并让它进行所需的比较。

对于任何更高级的,我建议在 QListView 来看看,你可以结合自己的模型实现或便民模型QStandardItemModel 或 QStringListModel(后者可能是最简单和优雅的解决方案您的案件)。为了排序,您将在实际模型和视图之间放置一个 QSortFilterProxyModel。

操作系统类

Q1:在 hyper 里安装 win7 总是失败,这是怎么回事?

 

A:win7 要安装 sp1,并且 .net 3.5 和 .net4.8 要安装;主板开启 vdiintel 虚拟化;win7 其他版本是不行的。

Q2:银河麒麟V10 是否支持 SQL Server?

A:银河麒麟V10 是带 docker 的,不行就用 docker 跑。目前 SQL-Server 只支持运行在 x64 架构的 Linux 上。但国内的 Linux 发行版大多使用自主架构的处理器,这些处理器大多是 ARM 架构,所以还是不兼容。


硬件类

Q:有的Ubuntu系统为什么不能安装高版本的显卡驱动?

A:官版驱动不适配。Linux上用开源驱动非常多。一般都用官网的、开源的驱动,如果都找不到,那就换显卡吧。


运维类

Q:I7-11700CPU 16G运存 SSD 打开EXCEL-WPS 慢,是怎么回事?新买的电脑,看到CPU占用到95% WPS的进程。这个是财务的EXCEL表格,大小有300M。

A:修电脑三大法则:重启、重装、重买;关掉稻壳,重装WPS,更换专业版,都可以试试;还可以换个Office,Office处理大文件性能更好一些;

以下两个方法不错,曾经处理过2G 的excel:一是用Python pandas,二是把数据存到MySQL。

把常用功能写个脚本,给财务用就可以,或者写个SQL,把数据入库,财务用的时候,上SQL查一下就行;要是不用数据库的话, 那就写个py 脚本,给财务的同学用吧。

现在的有些财务人员,都开始学习 Python 了。这不是卷,这是解放程序员的劳动力,让程序员致力于更有创造性的工作中。

以上就是小编整理的近期技术人员比较关心的技术问题,特此感谢51CTO技术交流群中的热心群友,是你们的细心解答帮助大家解决了难题。如果还有技术方向的问题,欢迎大家加群探讨,也可以在下方留言。



责任编辑:莫奇 来源: 51CTO
相关推荐

2022-06-17 18:49:25

pythonexcel

2022-06-07 11:16:51

云原生人工智能运维

2022-06-16 15:42:16

攻击面管理ASM

2022-06-27 15:25:08

架构模型治理

2022-06-28 12:35:21

DockerPython

2022-06-09 10:12:01

网络安全人工智能威胁监测

2022-06-28 14:47:43

数据中心服务器科技

2022-06-28 10:58:35

勒索软件攻击事件

2022-06-27 17:46:53

PythonFlask

2022-06-23 14:03:26

混合ITCIOIT管理工具

2022-06-20 13:34:46

漏洞网络攻击

2022-05-27 15:06:22

攻击面管理(ASM)网络安全运营

2022-06-17 09:08:27

代码Python内置库

2022-06-13 12:43:13

Java模块

2022-06-21 14:10:43

NIST网络安全

2022-06-10 07:45:09

CentOS国产操作系统

2022-06-23 12:30:03

物联网工业物联网IIoT

2022-06-16 10:14:51

LinuxEmacs编辑器

2022-06-21 14:30:16

Vim自定义Linux

2022-06-13 18:01:51

新华三

同话题下的热门内容

源码探秘:Python 中对象是如何被调用的?使用Java和Python进行数据统计和分析C++与Java“相爱相杀”:一个步步紧逼,一个节节败退GitHub这五个骚操作,99%的人不知道!裁员真能拯救中国互联网?吐血推荐17个提升开发效率的“轮子”哪个版本的JVM最快?Flask vs Django: 该如何选择Python框架?

编辑推荐

2017年9月编程语言排行榜:Java、C与C++三巨头还能统治排行榜多久?2017年最受欢迎的5个前端框架比较2017年11月编程语言排行榜:脚本语言怎么了?2017年3月编程语言排行榜:Swift首次进入前十最近租房有点烦!技术人如何用Python找到称心如意的“小窝”?
我收藏的内容
点赞
收藏

51CTO技术栈公众号