首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

如何正确的在 Android 上使用协程 ?

第一类是 Medium 上热门文章的翻译,其实我也翻译过: 在 Android 上使用协程(一):Getting The Background 在 Android 上使用协程(二):Getting started...在 Android 上使用协程(三) :Real Work 说实话,这三篇文章的确加深了我对协程的理解。...在 Android 中,一般是不建议直接使用 GlobalScope 的。那么,在 Android 中应该如何正确使用协程呢?再细分一点,如何直接在 Activity 中使用呢?...如何配合 ViewModel 、LiveData 、LifeCycle 等使用呢?我会通过简单的示例代码来阐述 Android 上的协程使用,你也可以跟着动手敲一敲。...协程在 Android 上的使用 GlobalScope 在一般的应用场景下,我们都希望可以异步进行耗时任务,比如网络请求,数据处理等等。当我们离开当前页面的时候,也希望可以取消正在进行的异步任务。

2.8K30

如何使用Whoami在Kali上保持匿名性

关于Kali-Whoami Whoami工具的目的是让您在Kali-linux上尽可能地保持匿名活动,该工具提供了一个用户友好且易于使用的简单界面,并遵循两种不同的路径以确保最高级别的匿名性。...; 日志清理; IP修改; DNS修改; MAC地址修改; 反冷启动; 时区修改; 主机名称修改; 浏览器匿名化; 准备工作 如果你没有定期更新你的系统,或者还没有安装相关的依赖组件的话,你就无法正常使用该工具了...sudo apt update && sudo apt install tar tor curl python3 python3-scapy network-manager 工具安装 首先,我们需要使用下列命令将该项目源码克隆至本地...git clone https://github.com/omer-dogan/kali-whoami 接下来,安装makefile sudo make install 完成上述操作之后,我们就可以开始使用...工具使用 完成工具的安装之后,我们需要在系统的搜索栏中搜索“Kali Whoami”,或直接在命令行终端中运行下列命令: sudo kali-whoami --help 此时,你将会看到如下所示的提示界面

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

    如何使用 WinGet 在Windows上安装 PHP 8.4

    开源技术小栈导读:本文介绍了如何使用 winget 搜索、下载、安装、更新和删除 Windows PHP 二进制文件。...winget WinGet 是一种Windows命令行工具,使用户能够在 Windows 10、Windows 11 和 Windows Server 2025 计算机上发现、安装、升级、删除和配置应用程序...例如,PHP 8.4 在程序包 ID PHP.PHP.8.4 下提供。或者,相同的包也可以在 php8.4 绰号下获得,遵循 Debian/Ubuntu PHP 包使用的命名模式。...在 Winget 上搜索 PHP 包 所有 Windows PHP 版本都位于 PHP.PHP 命名空间下,完整的程序包 ID 是通过将 PHP 版本的主要版本号和次要版本号附加到命名空间来构建的。...-d .指定下载目录,在本例中,设置为当前工作目录。 它为运行命令的 CPU 体系结构下载 PHP 的线程安全版本。 下载软件包不会修改系统上的任何其他内容。

    10610

    如何使用Ansible自动在Ubuntu 14.04上安装WordPress

    使用几行YAML(一种直接的标记语言),我们将自动完成在新的Ubuntu 14.04服务器上设置WordPress的繁琐过程。...我们将在此服务器上安装Ansible(在本教程中称为构建服务器)。我们将登录此服务器,本教程的所有文件和命令都将在此服务器上运行 运行Ubuntu 14.04的目标服务器。...我们将在此服务器上安装WordPress(通过Ansible)(在本教程中称为wordpress-server) 为两个服务器配置的有Sudo权限非root]用户(你可能需要一台已经设置好可以使用sudo...(可选)无密码sudo访问 这是更快,但安全性较差使用您的密码的上sudo访问WordPress的服务器。...如果您在所有服务器上设置了访问权限,这将导致命令在此处列出的所有服务器上运行。这将允许您一次在多个不同的服务器上安装WordPress。 剧本 我们可以将剧本视为WordPress应用程序的定义。

    1.5K40

    如何使用Nginx在Ubuntu 16.04上使用SSL保护Concourse CI

    在本指南中,我们将通过使用Nginx设置TLS / SSL反向代理来保护Concourse CI接口。...在Ubuntu 16.04上安装Concourse CI 在Ubuntu 16.04上安装Nginx 在Ubuntu 16.04上使用Let加密来保护Nginx 遵循这些先决条件后,您将在端口8080上运行...由于我们只对活动服务器块感兴趣,我们可以使用grep在/etc/nginx/sites-enabled目录中搜索: grep -R server_name /etc/nginx/sites-enabled...首先,在文件的最开始,在server块之前,我们将创建一个upstream名为concourse的块,用于定义Concourse Web进程如何接受连接。持续集成服务器接受端口8080上的连接。...在主要的团队,这是管理组,默认情况下是唯一可用的选择: 在下一页上,系统会要求您输入凭据。

    94900

    如何使用MEAT在iOS设备上采集取证信息

    该工具旨在帮助安全取证人员在iOS设备上执行不同类型的信息采集任务,将来该工具会添加针对Android设备的支持。...设备上执行信息采集 -filesystem 执行文件系统采集 -filesystemPath 文件系统路径,需配合--filesystem参数使用,默认为"/"...-logical 执行逻辑采集,使用AFC访问内容 -md5 使用MD5算法获取哈希文件,输出至Hash_Table.csv -sha1...开启Verbose模式 支持的采集类型 iOS设备-逻辑采集 在MEAT上使用逻辑采集功能,将指示工具通过越狱设备的AFC提取可访问的文件和文件夹。...上使用文件系统采集功能,可以允许该工具开启AFC2服务,并将目标设备上所有的文件和文件夹拷贝至我们的主机系统中。

    1.6K10

    如何正确在iterm2上使用lrzsz命令

    如何安装iterm2 1.百度搜索iterm2,如下图 ? 点击网址,可打开网站地址,如下图,按照常规方式进行安装即可。 安装完成之后,我们打开iterm2,原始界面如下 ?...1.Mac系统默认使用dash作为终端,可以使用命令修改默认使用zsh: chsh -s /bin/zsh 2.安装Oh my zsh sh -c "$(wget https://raw.githubusercontent.com...-> color,选择右下角下拉框的import,选择我们下载好的solarized目录里面的iterm2-colors-solarized下面的两个文件,然后关闭终端,重新进入刚才的路径,这时候我们在点击右下角下拉框...配置sz和rz命令 在我们操作的服务器上执行如下命令进行安装 yum install lrzsz ?...安装好之后,我们就可以在服务器上执行sz和rz命令了,sz是将服务器的文件下载到本地电脑上,rz是将本地电脑的文件上传到服务器上。 ? 此时,你会发现,永远停留在下面这个界面。

    3.2K10

    如何使用Power BI在财年上做周分析?

    温馨提醒 1.如果您的企业需要在财年上做分析,那么这些代码可以直接拿来参考; 2.如果您并不需要在财年上做分析,这篇文章会教你如何处理一些复杂的、时间智能函数无法解决的问题; 3.不同企业的财年定义不同...有朋友询问,如果是财年,从财年第一天算第一周,又该如何做: ? 这问题确实值得思考,有不少实际业务场景的确会用到。...DATEDIFF(firstdayoffiscalyear,[Date],DAY)就是本财年第一天到选定日期的时间间隔, //因为我们要计算周数,所以后面加上了weekdayoffirstday+6,这样实际上2019...ALLEXCEPT( '日期表', '日期表'[fiscal year], '日期表'[fiscal weeknum] ) ) 建立了这样的维度后,就可以愉快地在财年上做周分析啦

    2.1K10

    如何使用Homebrew在Linux和Windows上安装软件

    该应用程序增加了Linux风格的软件包管理,使用户可以轻松安装命令行实用程序。 现在,在2.0.0及更高版本中,该应用程序不再是Mac专有的。...在Linux系统上,该应用程序称为Linuxbrew。 为什么用Homebrew代替发行版的软件包管理器?...您可能出于某些原因会选择使用Linuxbrew而不是系统的标准软件包管理器。 首先,您不需要使用sudo命令来安装软件包。 您甚至不一定需要root特权才能安装它。...使用Homebrew/Linuxbrew的另一个原因是,您可能想在不同的系统上使用相同的软件包管理器。...系统要求 在Homebrew网站的Linuxbrew部分,它列出了一些系统要求,大多数相对较新的系统都可以轻松满足以下要求: GCC 4.4或更新版本。

    3.8K20

    如何使用DevStack在Ubuntu服务器上安装OpenStack

    我将在Ubuntu Server 16.04平台上这样做,尽管这个过程几乎适用于任何Linux服务器发行版。 现在让我们开始吧 安装 您必须做的第一件事是创建一个可用于安装的新的非root用户。...首先使用以下命令安装git: sudo apt install git 现在您可以使用以下命令签出DevStack(我们将使用最新的稳定版本,皇后): git clone https://github.com...使用cd devstack命令切换到该目录。 在发出安装命令之前,您需要配置local.conf文件。 用命令nano local.conf打开这个文件。...你可以期待这个命令需要30-60分钟才能完成,因此在它发挥魔力的同时还要处理其他一些任务。...登录 安装完成后,打开与OpenStack服务器位于同一网络上的Web浏览器,并将其指向http://SERVER_IP/dashboard(其中SERVER_IP是OpenStack服务器的IP地址)

    1.8K20

    如何使用Apt-Get在Ubuntu 16.04上安装Java

    介绍 Java和JVM(Java的虚拟机)被广泛使用并且是多种软件所必需的。本文将指导您使用apt-get安装和管理不同版本的Java的过程。...要安装JDK 9,请使用以下命令: sudo apt-get install oracle-java9-installer 管理Java 一台服务器上可以安装多个Java。...您可以在命令行使用update-alternatives配置默认使用的版本,管理哪些符号链接用于不同的命令。...您可以通过执行与上一节中相同的命令来执行此操作: sudo update-alternatives --config java 从首选安装中复制路径,然后使用nano或您喜欢的文本编辑器打开/etc/environment...结论 您现在已经安装了Java并知道如何管理它的不同版本。您现在可以安装在Java上运行的软件,例如Tomcat,Jetty,Glassfish,Cassandra或Jenkins。

    3.4K20

    研究如何使用IPCDump在Linux上跟踪进程间通信

    IPCDump IPCDump这款工具可以帮助广大研究人员在Linux操作系统上跟踪进程间通信(IPC)。...IPCDump收集的大部分信息来自放置在内核中关键函数的kprobes和跟踪点上的BPF钩子。为此,IPCDump使用了gobpf,它可以为bcc框架提供Golang绑定功能。...功能介绍 支持管道和FIFO; 回环IPC; 信号(常规和实时); Unix流和数据图表; 基于伪终端的IPC; 基于进程PID或进程名的事件过滤器; 可读性高或JSON格式的输出数据; 工具要求&使用...4.15.0 已测试 未测试 5.4.0 未测试 已测试 5.8.0 未测试 已测试 工具构建 依赖组件 首先,我们需要安装Golang: snap install go --classic 接下来,在操作系统上安装好...构建IPCDump git clone https://github.com/guardicore/IPCDump cd IPCDump/cmd/ipcdump go build 工具使用 .

    1.4K30

    如何使用Chainlink VRF在以太坊上生成随机数

    开发者现在可以使用该功能将其集成到多个测试网上的DApp中,从而使智能合约能够获得可在链上验证的随机数。 可验证随机函数是怎么实现的?...如何在项目中实现呢? 如何实现随机性 让我们创建一个名为RandomGenerator的新合约,在合约里我们将调用VRF并接收结果。...函数上添加了override[6] 修饰符以实现重载,在实现中,使用reqId 和 randomNumber 来保存接收变量的值。...rand.requestRandomness(keyHash, fee, seed); 当结果返回时,随机值将存储并且可以通过以下方法获取: rand.randomNumber; 自己尝试一下 现在我们将逐步实践如何使用...结论 使用 Chainlink 可以在智能合约中可以使用可验证的随机数。

    3K10

    如何使用phpMyAdmin在FreeBSD上安装MySQL服务器11

    要安装phpMyAdmin,我们还需要在FreeBSD上安装带有PHP的Web服务器。 在本教程中,我们将使用phpMyAdmin安装MySQL以及PHP 5.6的Apache Web服务器。...更新基本系统 在安装任何软件包之前,建议您使用以下命令更新软件包和存储库。 pkg update pkg upgrade 更新系统后,继续进行。...安装MySQL数据库服务器 您可以使用其默认程序包管理器在FreeBSD上安装MySQL服务器。 运行以下命令安装MySQL 5.7。...运行以下命令在系统上安装Apache Web服务器。 pkg install apache24 上述命令将在您的服务器上安装Apache 2.4版本。...结论 在本教程中,我们已经学会了在FreeBSD 11上使用phpMyAdmin安装MySQL。我们还学习了如何安装Apache Web服务器以及PHP 5.6。

    1.8K50

    如何使用 CNN 推理机在 IoT 设备上实现深度学习

    在本文中,我们将讨论如何使用CNN推理机在物联网设备上实现深度学习。 将服务迁移到云端 对于低功耗的物联网设备,问题在于是否存在一个可靠的解决方案,能够将深度学习部署在云端,同时满足功耗和性能的要求。...SqueezeNet在保持相似的推理精度的同时,使用1×1卷积核来减少3×3卷积层的输入大小。然后,我们将SqueezeNet推理机的性能与Zuluko上的TensorFlow进行比较。...图2 在TensorFlow上运行的SqueezeNet推理机与使用ARM Compute Library(ACL)构建的SqueezeNet推理机的性能。...考虑资源利用率,当在TensorFlow上运行时,平均CPU使用率为75%,平均内存使用量为9MB;当在SqueezeNet上运行时,平均CPU使用率为90%,平均内存使用量约为10MB。...我们已经成功地扩展了NNVM来生成代码,以便我们可以使用ACL来加速ARM设备上的深度学习操作。这种方法的另一个好处是,即使模型变得更加复杂,我们仍然可以轻松地在物联网设备上实现它们。

    1K10

    如何使用Spiped在Ubuntu 16.04上加密到Redis的流量

    在本指南中,我们将演示如何使用名为spiped的安全管道程序加密Redis流量。Redis客户端和服务器之间的流量将通过专用加密隧道进行路由,类似于专用SSH隧道。...安装Redis服务器和客户端软件包 在开始之前,我们应该在一台机器上安装Redis服务器,在另一台机器上安装客户机软件包。如果您已经配置了其中一个或两个,请随时跳过。...在Redis服务器上生成加密密钥 接下来,在Redis服务器上的/etc中创建一个spiped配置目录,以存储我们将为加密生成的密钥: sudo mkdir /etc/spiped 键入以下内容生成安全密钥...此处使用的选项与Redis服务器上使用的选项非常相似,但有以下区别: -e:指定进入源套接字的流量需要加密。这将建立源套接字和目标套接字之间的关系。 -s:定义源套接字,就像之前一样。...(例如,用于复制或群集),您需要设置两个并行隧道: 在新服务器上,安装Redis服务器软件包和 spiped 为新的Redis服务器生成新的加密密钥(为该文件使用一个唯一名称) 将加密密钥从一个服务器复制到另一个服务器的

    1.9K00

    如何使用lazyCSRF在Burp Suite上生成强大的CSRF PoC

    在此之前,我比较喜欢使用的是“Generate CSRF PoC”,但这个插件无法自动判断请求的内容,而且它甚至还会使用“form”来生成无法用“form”表示的 PoC,例如使用JSON作为参数或PUT...除此之外,在生成的CSRF PoC中,可以在Burp套件本身中显示的多字节字符经常会显示成乱码。因此,lazyCSRF便应运而生了。...然后在Burp Suite中,点击“Extensions”标签页,然后选择“添加新的插件”。选择插件类型为“Java”,然后选择我们已下载的JAR。...工具使用 我们可以通过在菜单栏中选择“Extensions -> LazyCSRF -> Generate CSRF PoC By LazyCSRF”来生成一个CSRF PoC。...命令行构建 我们也可以选择在命令行中使用maven进行代码构建: $ mvn install 许可证协议 本项目的开发与发布遵循MIT开源许可证协议。

    1.3K20
    领券