`fcntl` module provides no access to F_GETLK operation

未關閉
#96,694 0 則留言 1 個 reaction 已指派 0 人 在 GitHub 檢視

還沒有人認領這個 Issue。

評估

難度
4/5
預估耗時
3-5 天
新手友好度
20/100
Issue 類型
功能
描述清晰度
基本清楚
活躍度
停滯
技術堆疊
python

研究方向

從 fcntl 模組現有的 F_GETLK 常數開始,並檢視 issue 中描述的平台相依 struct flock 型別。開始之前先查看相關的 PR gh-112372 和 gh-96695,因為所要求的實作已經被回報為完成。完成的標準是提供對 F_GETLK 的存取,而不要求呼叫端猜測依賴作業系統和 CFLAGS 的配置。

由索引模型根據 Issue 內容生成。

描述

extension-modules type-feature

Wrapper/access for fcntl(fd, F_GETLK, …)

The fcntl module currently exposes the F_GETLK constant itself, but unfortunately because the types in struct flock are OS and CFLAGS dependent (off_t, pid_t), the operation is hard to work-around with struct.unpack.

Pitch

Exposing F_GETLK is particularly useful to determine if a process that created a lock file or pid file is actually still alive, vs. whether the lock/pid file was left uncleaned from a previous exit/crash/etc. The l_pid field is the most useful, but if wrapping the call anyway it might make more sense to just expose all values.

I've already implemented this, a PR is following shortly.

Linked PRs
  • gh-112372
  • gh-96695
主要語言
Python
星號
77.2k
分支
36k
平均合併
1 天 9 小時
30 天內合併 PR
558

貢獻指南

開啟貢獻指南

從這裡開始

  1. 先讀完整個 Issue,再讀專案的貢獻指南。
  2. 在 Issue 下留言說明你要接手 —— 這能避免兩個人做同樣的事。
  3. Fork 儲存庫,在一個分支上完成修改。
  4. 送出 Pull Request,並在描述裡引用這個 Issue 編號。

python/cpython 的其他 Issue

查看 python/cpython 的全部 Issue

相似的 Issue

更多 Python Issue

把新 issue 寄到你的電子郵件信箱

精選適合新手參與的 GitHub issue 摘要。