예전에도 이런 질문이 있었던거 같은데요.
다시 한번 확인하구 싶어서요.
Socket 어드레스라 함은 (IP_number, Port_number)이구요.
Socket서버프로그램과 소켓클라이언트 프로그램을 같은 Machine에서 수행하구 나서 두개의 프로그램을 돌리고 나서.. netstat -a | grep Port_number 하면 TIME_WAIT라는 state가 남구요.
TIME_WAIT가 남아있는 Local Port(Client가 사용한 emphermal port) 에 대해서 bind함수를 수행하면(서버에서) "already in use"라는 메시지가 나오는 며, socket bind를 못하는 데..
커널 쓰레드를 사용하고 있는지 사용자 쓰레드를 사용하고 있는지 어떻게 확인을 하며... 만약 사용자 쓰레드를 사용하고 있다면 커널 쓰레드를 사용하고 싶은데.... 커널쓰레드는 어떻게 사용하는 것인가요? library를 사용하면 된다는데.. 어떤 library를 사용해야하나요? 제가 잘 몰라서.... 자세히좀 알려주세요... 참. 커널쓰레드도 pthread를 쓰나요?
공유 라이브러리를 링크 할 때
-laaa 이런식으로 주면
linker-name 의 라이브러리로 링크 된다고 알 고 있습니다.
예를 들어
libaaa.so -> libaaa.so.2
libaaa.so.1-> libaaa.so.1.0 libaaa.so.2-> libaaa.so.2.0
이런식으로 link 가 되어 있다면
link 시에 libaaa.so.2 로 링크가 되어서 aaa.so.2.0 라이브러리를
사용하게 되는 것으로 알고 있습니다.
여기에서 libaaa.so.1 라이브러리를 사용할 필요가 생겼습니다.
그것을 사용 하고자
-l aaa.so.1 이런식의 구문을 썼더니...
ansi c 로 구현하고자 하는데요...
state 라는 변수에 default 값 0 으로 주고
alt 키가 눌러지면 1로 값을 변경하여 키가 눌러졌는지 체크할려고 하는데...
이런 특수키값을 어떻게 읽어와야할지..
고수님들 좀 도와주세요....
제가 말을 잘못해서... 이해를 잘 못 하실수도 있겠는데 ㅠㅠ
window C 에서 소문자열를 대문자열로 변환하는 함수가 _strupr이잖아요..
linux C에서 _srtupr에 해당하는 함수가 없나요?... 소문자를 대문자로 변환하는 함수 toupper 함수가 있기는 한데...
toupper함수는 string 길이를 알아서 string 길이만큼 for문을 돌아서 문자 하나씩 모두 바꿔져야 하잖아요... 그것 말고 _strupr 함수처럼 한번에 바꾸는 함수는 없나요?
PRO*C와 pthread를 사용해서 솔라리스 8에서 서버 프로그래밍을 하고 있는 중입니다.
다름이 아니라 간혹 검색결과가 이상하거나, 에러가 나는 경우가 있습니다.
멀티 스레드가 아닌 경우에는 보지 못했던 문제인데 말이죠.. ^^;;;;
어떤 경우에 이런 일이 있을수 있는지 알고 싶습니다.
비슷한 경험을 하셨던 분이나 이런 상황에 대해서 알고 계시면 답변 부탁 드립니다.
그럼 좋은 하루 되시길 바랍니다.
음..
보통 개발하시면서 한디렉토리에 소스 파일과 컴파일된 binary 파일 같이 있잔아요. 개인적으로 백업을 할때 그냥 디렉토리 전체를 tar을 묶는 방법을 쓰는데 이제는 디렉토리가 너무 커져서 순순한 소스화일만 백업을 하려고 합니다.
그래서 자동으로 백업을 할때 소스파일만 백업할려구 스크립트를 만들려구 하는데 잘 안되네요..
문제는 어떻게 binary파일인지 아스키 파일인지 구별할수 없더라구요
find을 주로 테스트해봐는데.. 잘안되네요.
오늘 하루 종일 시도하다가.. 이제 너무 피곤해서 자려 합니다.
위의 제목과 같이 GTK+를 cygwin에서 gcc와 함께 사용해보고 싶은데...
방법이 알고 싶네요.. 도저히 못하겠어서..
linux에서는 gcc와 함께 사용 가능하다고 하던데..
것두 아직 해보지는 않았구요..
누구 좀 알려주셨으면 합니다..
......
void Graph:: InitFromFile(char* fileName) { ifstream fin(fileName); char temp[10]; int nodeNum; int linkNum; while(fin.eof()==0) { fin>>temp; nodeNum=atoi(temp); fin>>temp; linkNum=atoi(temp); HeadNodes[nodeNum].Insert(linkNum); } fin.close(); } .......
이런 식으로 프로그래밍을 했더니 다음과 같은 애러가 뜹니다..
/tmp/ccg20u0f.o: In function `Graph::InitFromFile(char *)':
exception 에 대해 공부를 하고 있는데요.. etest->test() 함수에서 exception 이 발생해야 되는것 아닌가요?? -.-;; try catch에서 exception을 잡지 못하네요.. 미리 답변 감사드립니다.
#include <iostream.h>
class extest { private: char * str; char * dtr; public: extest(){} ~extest(){}
void test(); };
void extest::test() { strcpy(str,dtr); }
int main() { extest *etest = new extest;
try{ etest->test();