Python 支持零拷贝 I/O 吗?

2024-02-17

我有两个打开的文件对象,dest and src。文件对象dest打开进行写入,查找位置放置在文件内的某个偏移处,并且文件对象src已打开供阅读。我需要做的只是从当前位置读取src到 EOF 并将内容传输到dest尽快。

如果我用 Java 编程,我可以利用FileChannel#transferTo() http://download.oracle.com/javase/6/docs/api/java/nio/channels/FileChannel.html#transferTo%28long,%20long,%20java.nio.channels.WritableByteChannel%29执行零拷贝文件 I/O 的方法。

Python也支持零拷贝吗?


从 3.3 版本开始,Pythonos.sendfile http://docs.python.org/dev/library/os.html#os.sendfile,它与各种 Unix 变体接口sendfile(2)零拷贝 I/O 接口。它对文件描述符进行操作,而不是一般的类文件对象。对于较老的Python,有py-发送文件 https://github.com/giampaolo/pysendfile.

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Python 支持零拷贝 I/O 吗? 的相关文章

  • 尽管极其懒惰,但如何在 Python 中模拟 IMAP 服务器?

    我很好奇是否有一种简单的方法来模拟 IMAP 服务器 例如imaplib模块 在Python中 without做很多工作 是否有预先存在的解决方案 理想情况下 我可以连接到现有的 IMAP 服务器 进行转储 并让模拟服务器在真实的邮箱 电子
  • Python、Tkinter、更改标签颜色

    有没有一种简单的方法来更改按钮中文本的颜色 I use button text input text here 更改按下后按钮文本的内容 是否存在类似的颜色变化 button color red Use the foreground设置按钮
  • InterfaceError:连接已关闭(使用 django + celery + Scrapy)

    当我在 Celery 任务中使用 Scrapy 解析函数 有时可能需要 10 分钟 时 我得到了这个信息 我用 姜戈 1 6 5 django celery 3 1 16 芹菜 3 1 16 psycopg2 2 5 5 我也使用了psyc
  • 如何生成给定范围内的回文数列表?

    假设范围是 1 X 120 这是我尝试过的 gt gt gt def isPalindrome s check if a number is a Palindrome s str s return s s 1 gt gt gt def ge
  • 导入错误:没有名为 _ssl 的模块

    带 Python 2 7 的 Ubuntu Maverick 我不知道如何解决以下导入错误 gt gt gt import ssl Traceback most recent call last File
  • 更改自动插入 tkinter 小部件的文本颜色

    我有一个文本框小部件 其中插入了三条消息 一条是开始消息 一条是结束消息 一条是在 单位 被摧毁时发出警报的消息 我希望开始和结束消息是黑色的 但被毁坏的消息 参见我在代码中评论的位置 插入小部件时颜色为红色 我不太确定如何去做这件事 我看
  • 打破嵌套循环[重复]

    这个问题在这里已经有答案了 有没有比抛出异常更简单的方法来打破嵌套循环 在Perl https en wikipedia org wiki Perl 您可以为每个循环指定标签 并且至少继续一个外循环 for x in range 10 fo
  • __del__ 真的是析构函数吗?

    我主要用 C 做事情 其中 析构函数方法实际上是为了销毁所获取的资源 最近我开始使用python 这真的很有趣而且很棒 我开始了解到它有像java一样的GC 因此 没有过分强调对象所有权 构造和销毁 据我所知 init 方法对我来说在 py
  • 在循环中每次迭代开始时将变量重新分配给原始值(在循环之前定义)

    在Python中 你使用 在每次迭代开始时将变量重新分配给原始值 在循环之前定义 时 也就是说 original 1D o o o for i in range 0 3 new original 1D revert back to orig
  • 运行多个 scrapy 蜘蛛的正确方法

    我只是尝试使用在同一进程中运行多个蜘蛛新的 scrapy 文档 http doc scrapy org en 1 0 topics practices html但我得到 AttributeError CrawlerProcess objec
  • 使用 Pycharm 在 Windows 下启动应用程序时出现 UnicodeDecodeError

    问题是当我尝试启动应用程序 app py 时 我收到以下错误 UnicodeDecodeError utf 8 编解码器无法解码位置 5 中的字节 0xb3 起始字节无效 整个文件app py coding utf 8 from flask
  • 表达式中的 Python 'in' 关键字与 for 循环中的比较 [重复]

    这个问题在这里已经有答案了 我明白什么是in运算符在此代码中执行的操作 some list 1 2 3 4 5 print 2 in some list 我也明白i将采用此代码中列表的每个值 for i in 1 2 3 4 5 print
  • HTTPS 代理不适用于 Python 的 requests 模块

    我对 Python 还很陌生 我一直在使用他们的 requests 模块作为 PHP 的 cURL 库的替代品 我的代码如下 import requests import json import os import urllib impor
  • Python:尝试检查有效的电话号码

    我正在尝试编写一个接受以下格式的电话号码的程序XXX XXX XXXX并将条目中的任何字母翻译为其相应的数字 现在我有了这个 如果启动不正确 它将允许您重新输入正确的数字 然后它会翻译输入的原始数字 我该如何解决 def main phon
  • 循环中断打破tqdm

    下面的简单代码使用tqdm https github com tqdm tqdm在循环迭代时显示进度条 import tqdm for f in tqdm tqdm range 100000000 if f gt 100000000 4 b
  • Python - 按月对日期进行分组

    这是一个简单的问题 起初我认为很简单而忽略了它 一个小时过去了 我不太确定 所以 我有一个Python列表datetime对象 我想用图表来表示它们 x 值是年份和月份 y 值是此列表中本月发生的日期对象的数量 也许一个例子可以更好地证明这
  • Python 3 中“map”类型的对象没有 len()

    我在使用 Python 3 时遇到问题 我得到了 Python 2 7 代码 目前我正在尝试更新它 我收到错误 类型错误 map 类型的对象没有 len 在这部分 str len seed candidates 在我像这样初始化它之前 se
  • 为美国东部以外地区的 Cloudwatch 警报发送短信?

    AWS 似乎没有为美国东部以外的 SNS 主题订阅者提供 SMS 作为协议 我想连接我的 CloudWatch 警报并在发生故障时接收短信 但无法将其发送到 SMS YES 经过一番挖掘后 我能够让它发挥作用 它比仅仅选择一个主题或输入闹钟
  • 从 Python 中的类元信息对 __init__ 函数进行类型提示

    我想做的是复制什么SQLAlchemy确实 以其DeclarativeMeta班级 有了这段代码 from sqlalchemy import Column Integer String from sqlalchemy ext declar
  • 您可以在 Python 类型注释中指定方差吗?

    你能发现下面代码中的错误吗 米皮不能 from typing import Dict Any def add items d Dict str Any gt None d foo 5 d Dict str str add items d f

随机推荐

  • 无服务器 - 部署期间出现“未知对象类型 asyncfunction”错误

    今天早上 我的项目的无服务器部署开始失败 我没有更改代码中的任何内容 上次成功部署是在大约一周前 这是部署日志 Error Error Unknown object type asyncfunction at Object object u
  • 如何在 iOS 中创建包括 Swift 的开发框架?

    我的目标是创建一个包含 Swift 和 Objective C 的 iOS 框架 我可以在我的开发项目中使用它 这个框架的本质是框架本身正在开发中 因此 每次我使用此框架构建项目时 由于缺乏更好的术语 我将使用该框架的项目称为 使用 项目
  • 从 FTP 流式传输文件并让用户同时下载

    我正在创建一个备份系统 其中备份将自动生成 因此我将把备份存储在不同的服务器上 但是当我想下载它们时 我希望链接是一次性链接 这并不难但是 为了确保安全 我正在考虑存储这些文件 以便它们无法通过其他服务器上的 http 访问 所以我要做的是
  • iOS 推送通知声音不来

    我正在开发 Ios 推送通知 我可以在其中获取推送通知 但问题是我在收到推送通知时无法听到任何声音 我还检查了我的通知中心 在那里我已经启用了声音 下面给出了我的代码 请指导我如何解决这个问题 UIApplicationMain class
  • COM 的跨平台替代方案

    我一直着迷于基于组件的编程 无论是使用 COM 另一个系统 还是仅使用纯 C 中的范例 如果一个人通常习惯 传统 OOP 模型 那么它需要一些时间来适应 但这绝对是值得的 它使我的代码更易于维护且更易于扩展 我目前正在进行的项目正在使用范例
  • javascript window.open 从回调

    window open 从主线程调用默认打开新选项卡 但是 这里每次都会打开新窗口 Opera 16 和 Google Chrome 29
  • 我需要在 Oracle 上的外键上创建索引吗?

    我有一张桌子A和一张桌子B A有一个外键B on B的主键 B ID 由于某种原因 我知道有合理的原因 当我在键上连接这两个表时 它没有使用索引 是否需要单独创建索引A B ID或者外键的存在应该提供这一点 外键约束本身并不提供 Oracl
  • 为什么 is_copy_constructible 在 MSVC12 中为 unique_ptr 返回 true

    我本来期望这个静态断言会触发 include
  • 具体QPushButton样式

    如何自定义 QPushButton 或 QToolButton 的外观 使其看起来像elementaryos 的网页 按钮 我真正想要的是特征图像位置和侧面的文字 也许如果我幸运的话我也可以得到这样的边框 但我真的不需要标题下面的小描述 我
  • 如何让这个Javascript函数在IE浏览器中工作?

    此 JAVSCRIPT 功能的目的是防止用户输入任何字母字符 如果用户输入这些字符 光标根本不会移动并停留在同一位置 但是 如果用户输入数字 光标将移动到下一个位置 例如 在此文本字段中 我只允许用户输入数字 此方法在除 IE 8 及更早版
  • Bootstrap 3.1.0 导航栏上的全宽输入组

    我在使用 bootstrap v3 1 0 时遇到了一些问题 我需要获得适合导航栏整个宽度的搜索栏 如下所示 v3 0 3 http bootply com 109727 http bootply com 109727但感觉输入组有一些问题
  • C# 字符串创建(指定长度)

    是否有一种简洁的方法 即不是 for 循环 来创建指定长度的字符串 字符串中的内容并不重要 您可以使用the string构造函数需要一个char and an int http msdn microsoft com en us libra
  • php heredocs 语法中的条件语句?

    我想知道您是否可以在此处文档中包含条件语句 这是我的脚本 但它无法正确解析 username php代码 function doSomething username if isset SESSION u name reply a class
  • AppRegistryNotReady:惰性 format_html()?

    为什么我会收到此异常 Traceback most recent call last File path1 myapp isu myapp isu tests unit views test view isu py line 8 in
  • RxJS 节流行为;立即获取第一个值

    笨蛋示例 https plnkr co edit NZwb3ol8CbZFtSc6Q9zm p preview https plnkr co edit NZwb3ol8CbZFtSc6Q9zm p preview 我知道 RxJS 5 0
  • 我们不能在 forEach 中重新分配数组值吗? [复制]

    这个问题在这里已经有答案了 问题陈述是 我应该用 0 替换 5 以下的任何数字 用 1 替换 5 及以上的任何数字 我试图重新分配值 但它不影响 为什么 function fakeBinary n let numbersArr n spli
  • 计算字符串开头的空格数[重复]

    这个问题在这里已经有答案了 如何计算 C 中字符串开头的空格数量 example this is a string 结果是 4 不知道如何正确执行此操作 Thanks Use Enumerable TakeWhile Char IsWhit
  • 在Android中我们如何复制文件并保留其只读属性?

    在我的 Android 应用程序中 我希望能够复制只读文件并使新版本也只读 在目标文件上使用 setReadOnly 方法只会返回 false 表明失败 当然检查文件本身表明它没有设置只读属性 编辑 正如 David Give 所建议的 这
  • 如果存在类似行,如何避免创建新行?

    我需要配置 hibernate 以避免创建重复的行 尽管该行存在 但它会创建一个新行 并且由于仅设置了一个字段 因此将所有其余行设置为 NULL 可以说我有一行如下 id des index age 1 MyName 2 23 虽然我只是将
  • Python 支持零拷贝 I/O 吗?

    我有两个打开的文件对象 dest and src 文件对象dest打开进行写入 查找位置放置在文件内的某个偏移处 并且文件对象src已打开供阅读 我需要做的只是从当前位置读取src到 EOF 并将内容传输到dest尽快 如果我用 Java