Computer >> 컴퓨터 >  >> 프로그램 작성 >> Java

Java에서 프로세스와 스레드의 차이점 - 2020 - 다른 사람


이 게시물에서는 Java에서 프로세스와 스레드의 차이점을 이해할 것입니다.

프로세스

  • 실행 중인 프로그램을 나타냅니다.

  • 프로세스를 만드는 데 더 많은 시간이 걸립니다.

  • 종료되는 데 시간이 더 걸립니다.

  • 컨텍스트를 전환하는 데 더 많은 시간이 걸립니다.

  • 시스템의 리소스를 더 많이 소비합니다.

  • 커뮤니케이션 측면에서 효율성이 떨어집니다.

  • 이것은 고립된 특성입니다.

  • 고중량 프로세스라고도 합니다.

  • 한 프로세스에서 다른 프로세스로 전환할 때 운영 체제의 인터페이스를 사용합니다.

  • 한 서버 프로세스가 차단되면 이전 프로세스가 차단 해제될 때까지 다른 서버 프로세스를 실행할 수 없습니다.

  • 자체 프로세스 제어 블록, 스택 및 주소 공간이 있습니다.

스레드

  • 프로세스의 세그먼트를 나타냅니다.

  • 프로세스를 만드는 데 시간이 덜 걸립니다.

  • 종료되는 데 시간이 덜 걸립니다.

  • 컨텍스트를 전환하는 데 시간이 덜 걸립니다.

  • 시스템 리소스를 덜 소모합니다.

  • 그들은 또한 메모리를 공유합니다.

  • 경량 프로세스라고도 합니다.

  • 의사소통이 더 효율적입니다.

  • 한 스레드에서 다른 스레드로 전환할 때 운영 체제를 호출할 필요가 없습니다.

  • 커널을 방해하지 않습니다.

  • 하나의 서버 스레드가 차단되면 두 번째 스레드는 동일한 작업에서 실행할 수 있습니다.

  • 부모의 프로세스 제어 블록을 사용합니다.

  • 자체 스레드 제어 블록, 스택 및 공통 주소 공간을 사용합니다.