Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
Tags
- TensorFlow
- Detectron2
- 텐서플로우
- 프로그래머
- 헬스케어
- C언어
- 언어모델
- 이터널리턴
- 개발자
- NPY
- connx
- 딥러닝
- python
- ChatGPT
- 언리얼엔진
- 욜로
- 설치
- yolo
- ctypes
- CycleGAN
- V3
- pyqt5
- 게임개발
- 호흡분석
- 논문리뷰
- 파이썬
- 파워셀
- 리뷰
- 딜러닝
- 논문
Archives
- Today
- Total
사냥꾼의 IT 노트
Python 병렬 라이브러리 개발 프로젝트 - ctypes에 대해 알아보자 본문
※본 포스팅은 22년 9월~22년 11에 진행된 프로젝트의 연구노트입니다.
ctypes란?
ctypes는 C/C++로 만들어진 라이브러리를 파이썬에서도 이용할 수 있게 하는 라이브러리다.
https://docs.python.org/ko/3/library/ctypes.html
ctypes를 호출해 사용하는 법은 파이썬답게 간단하다. 다음 코드를 참고하자.
import ctypes
from ctypes.wintypes import POINT
dll, so
dll과 so는 각각 윈도우, 리눅스 환경에서 쓰이는 라이브러리 파일이다.
- dll: dynmic linkage library의 약자로, 동적 링크 라이브러리로 해석한다. 이는 C/C++로 작성되며 메인 함수가 존재하지 않는다. 기본적으로 헤더 파일, 메인 파일로 구성되어 빌드된다.
- so: shared object의 약자로, dll과 비슷하지만 별도의 코드 없이 함수만이 존재한다. 대부분 리눅스 환경에서 쓰인다.
파이썬에서 dll, so 라이브러리 사용하기
파이썬에서는 Ctypes 라이브러리로 C언어의 매개변수와 라이브러리를 바로 사용 가능하게 지원해준다. 이들은 파이썬 내에 클래스 형태로 정의되어 있으며, 최상위 클래스는 C로 정의된 구조체 형태로 존재한다.
'python' 카테고리의 다른 글
Python 병렬 라이브러리 개발 프로젝트 - 코드 분할: pyconnx.py (0) | 2023.01.12 |
---|---|
Python 병렬 라이브러리 개발 프로젝트 - 순환 참조 오류 (0) | 2023.01.12 |
Python 병렬 라이브러리 개발 프로젝트 - demo 코드 분석 (0) | 2023.01.05 |
Python 병렬 라이브러리 개발 프로젝트 - 프로젝트 구성 (0) | 2023.01.05 |
Python 병렬 라이브러리 개발 프로젝트 - 개요 (0) | 2023.01.05 |