검색결과 리스트
IT에 해당되는 글 3건
- 2017.02.07 Android monkey script 돌리기
- 2017.02.02 파일을 열어서 마지막 줄을 삭제하고 새로운 내용 쓰기
- 2017.01.30 Thread 간 sync 를 맞춘후 timeout 을 걸어 hang 을 막는다.
글
Android monkey script 돌리기
개요
: Android OS 에서 monkey 를 사용 자동 touch 를 동작 하게 한다.
Script
// monkey.txt type= user speed= 1000 start data >> DispatchPointer(0, 0, 0, 1155, 1158, 0,0,0,0,0,0,0) // touch DispatchPointer(0, 0, 1, 1155, 1158, 0,0,0,0,0,0,0) // release UserWait(32000) // wait for 32s DispatchPointer(0, 0, 0, 42, 45, 0,0,0,0,0,0,0) // touch DispatchPointer(0, 0, 1, 42, 45, 0,0,0,0,0,0,0) // release UserWait(1000) DispatchPointer(0, 0, 0, 2025, 36, 0,0,0,0,0,0,0) // touch DispatchPointer(0, 0, 1, 2025, 36, 0,0,0,0,0,0,0) // release quit |
PC 사용 command
$adb push monkey.txt /data/log/monkey.txt // monkey script 를 phone 에 밀어 넣기 $adb shell monkey -f /data/log/monkey.txt 1 // monkey 실행 마지막 숫자는 반복 횟수 |
monkey 멈추기
$adb shell $ps | grep monkey $kill <process id> ex) greatlteks:/ $ ps | grep monkey shell 18286 16512 2142876 110416 futex_wait 74baca4f70 S com.android.commands.monkey greatlteks:/ $ kill 18286 |
'IT > 기타' 카테고리의 다른 글
파일을 열어서 마지막 줄을 삭제하고 새로운 내용 쓰기 (0) | 2017.02.02 |
---|---|
Thread 간 sync 를 맞춘후 timeout 을 걸어 hang 을 막는다. (0) | 2017.01.30 |
글
파일을 열어서 마지막 줄을 삭제하고 새로운 내용 쓰기
개요
: 특정 파일을 하나 열어서 해당 내용의 마지막 줄을 삭제하고 거기에 필요한 내용을 다시 쓰는 기능이 필요하다.
조건
- 기존의 파일을 열어 마지막 줄을 제거하고 필요한 줄로 대체하기
Code
'IT > 기타' 카테고리의 다른 글
Android monkey script 돌리기 (0) | 2017.02.07 |
---|---|
Thread 간 sync 를 맞춘후 timeout 을 걸어 hang 을 막는다. (0) | 2017.01.30 |
글
Thread 간 sync 를 맞춘후 timeout 을 걸어 hang 을 막는다.
목적
: pthread 로 멀티 스레드 간의 sync 를 맞추고 timeout 을 주어 자식 thread 가 종료되지 않았을 경우 timeout 전까지 기다린 후 진행한다.
사전 지식
- Process 와 Thread 의 차이
: 프로세스는 운영체제로 부터 주소공간, 메모리, 파일등을 할당 받으며, 리눅스 시스템에서는 코드영역과 라이브러리는 프로세스간 공유하게 된다.
: 스레드란 한 프로세스 내에서 동작되는 흐름으로 하나의 프로세스당 하나의 스레드가 존재하는데 이를 메인스레드라고 부르고, 여러개의 스레드가 하나의 프로세스 내에 있을 경우 멀티 스레드가 된다.
프로세스(Process) - 자신만의 고유공간(주소공간, 메모리 etc)을 할당 받음 - 다른 프로세스와 의 통신 구현이 쉽지 않음 |
스레드(Thread) - 다른 스레드와 공간과 자원을 공유(시스템 자원 절약) - 메모리를 공유하기 때문에 전역변수를 활용하여 스레드간 통신이 용이 |
- Ptread 함수
pthread_mutex_trylock - Lock 시도 시에 다른 스레드에 이미 Lock 이 되어 있을 경우 대기 하지 않고 return 되는 함수
int nRet = pthread_mutex_trylock(&m_mutex); if (nRet == EBUSY) { return true; } else if (nRet == EINVAL) { PMUTEX_TRACE_ERROR("Failed to try lock mutex: %s\n", strerror(nRet)); } else { pthread_mutex_unlock(&m_mutex); } |
TEST CODE
그외 Tip
- pthread 를 gcc 로 compile 하기 위해서는 -lpthread 옵션을 주어야 한다.
: ex - gcc -o test test.cpp -lpthread
- clock_gettime 을 gcc 로 complie 하기 위해서는 -lrt 옵션을 주어야 한다.
'IT > 기타' 카테고리의 다른 글
Android monkey script 돌리기 (0) | 2017.02.07 |
---|---|
파일을 열어서 마지막 줄을 삭제하고 새로운 내용 쓰기 (0) | 2017.02.02 |