草庐IT

kotlin_module

全部标签

Kotlin-Coroutines 中的async与await

Coroutines官网说明什么是协程?(摘自官网)Asynchronousornon-blockingprogrammingisanimportantpartofthedevelopmentlandscape.用于异步或非阻塞编程。简单概括:同步的方式去编写异步执行的代码协程依赖于线程协程挂起时不需要阻塞线程,几乎是无代价的.一个线程中可以创建N个协程协程的创建/启动runBlocking启动一个新的协程并阻塞调用它的线程launch:Job启动一个协程但不会阻塞调用线程(CoroutineScope作用域内调用)async:Deferred启动一个协程但不会阻塞调用线程(Coroutine

一文快速入门 Kotlin 协程

在今年的三月份,我因为需要为项目搭建一个新的网络请求框架开始接触Kotlin协程。那时我司项目中同时存在着两种网络请求方式,采用的技术栈各不相同,Java、Kotlin、RxJava、LiveData各种混搭,技术栈的不统一长远来看肯定是会造成很多不便的,所以就打算封装一个新的网络请求框架来作为项目的统一规范(前面的人估计也是这么想的,所以就造成了同个项目中的网络请求方式越来越多??),那么就需要考虑采用什么技术栈来实现了采用Kotlin语言来实现必不可少,都这年头了还用Java也说不过去。Retrofit也必不可少,而目前Retrofit也已经支持Kotlin协程了,Google官方推出的J

Uncaught SyntaxError: Cannot use import statement outside a module

报错原因:浏览器报错的原因是我们用了算是在2022年比较现代的es6的语法,但是浏览器将它作为以前版本的js解析,所以出现问题正确用法:为了让JavaScript更模块化、更整洁以及更易于维护,ES6引入了在多个JavaScript文件之间共享代码的机制。它可以导出文件的一部分供其它文件使用,然后在需要它的地方按需导入。为了使用这一功能,需要在HTML文档里创建一个type为module的脚本。例子如下:test.jsexportconstadd=(x,y)=>{returnx+y;}index.htmlscripttype="module"> import{add}from'./test.j

如何在 Kotlin 中创建单例类?

Singleton是一个全局对象,可以从应用程序的任何地方访问。本文展示了在Kotlin中创建它的不同方法。在Kotlin中,您可以使用对象声明来实现单例。但是,如果你不知道这个对象关键字,你可能会做这样的事情。常规单例classSingletonprivateconstructor(){companionobject{@Volatileprivatelateinitvarinstance:SingletonfungetInstance():Singleton{synchronized(this){if(!::instance.isInitialized){instance=Singleton

ModuleNotFoundError: No module named ‘tqdm.auto‘

查看tqdm的版本,将tqdm版本调整到4.45.0即可。piplistpipuninstalltqdmpipinstalltqdm==4.45.0参考网址:ModuleNotFoundError:Nomodulenamed'tqdm.auto'·Issue#16·swansonk14/p_tqdm·GitHub

vue3打包踩坑记录‘readFile‘ is not exported by __vite-browser-external, imported by node_modules/pdfjs-dist

打包‘readFile‘isnotexportedby__vite-browser-external报错打包报错如下问题所在处理办法打包报错如下问题所在因为vue3项目是用不了vue-pdf所以用了pdfjs-dist,开发环境pdf查看是没问题正常使用,只是在打包的时候就报错,应该是由于pdfjs-dist.js使用了fs,fs是nodejs环境下的工具库,所以vite才会报错。处理办法1、下载插件cnpminstallvite-plugin-commonjs-externals-D2、vite.config.js配置importcommonjsExternalsfrom'vite-plug

ModuleNotFoundError: No module named ‘transformers_modules.chatglm2-6b‘解决方案

  大家好,我是爱编程的喵喵。双985硕士毕业,现担任全栈工程师一职,热衷于将数据思维应用到工作与生活中。从事机器学习以及相关的前后端开发工作。曾在阿里云、科大讯飞、CCF等比赛获得多次Top名次。现为CSDN博客专家、人工智能领域优质创作者。喜欢通过博客创作的方式对所学的知识进行总结与归纳,不仅形成深入且独到的理解,而且能够帮助新手快速入门。  本文主要介绍了ModuleNotFoundError:Nomodulenamed'transformers_modules.chatglm2-6b’解决方案,希望能对使用chatglm2的同学们有所帮助。需要说明的是,本解决方案简单易用,不需要调整任

No module named 'torch'怎么办

如果在使用Python程序时出现"Nomodulenamed'torch'"错误,说明你的环境中没有安装PyTorch库。可以使用以下命令来安装PyTorch:pipinstalltorch如果你正在使用Anaconda环境,则可以使用以下命令来安装PyTorch:condainstallpytorchtorchvision-cpytorch如果安装后仍然无法解决问题,请确保你正在使用正确的Python版本(PyTorch需要Python3.6或更高版本),并且已经安装了所需的依赖项。

AttributeError: module ‘backend_interagg‘ has no attribute ‘FigureCanvas‘的解决办法

bug的产生是在使用python的matplotlib库的时候发现无法绘制和老师一样的图原因一开始我还以为是我的matoltlib和我的python版本不匹配后面发现真正原因其实是matplotlib的backend的默认渲染器是agg,agg是一个没有图形显示界面的终端,如果要图像正常显示,则需要切换为图形界面显示的终端TkAgg解决方法修改backend配置:matplotlib.use(‘TkAgg’)原代码和修改后代码对比原代码:`importnumpyasnpimportmatplotlib.pyplotaspltx=np.linspace(0.0001,3,100)y=x**xpl

kotlin<第十一篇>:Channel-通道

(1)基本用法Channel实际上是一个并发安全的队列,它可以用来连接协程,实现不同协程的通信。生产者/消费者模式(send-channel-receive)Channel的基本用法如下:runBlocking{valchannel=Channel()//生产者valproducer=GlobalScope.launch{vari=0while(true){delay(1000)channel.send(++i)println("send$i")}}//消费者valconsumer=GlobalScope.launch{while(true){valelement=channel.receiv