2012-01-30 2 views
3

얼마 전에 this question에게 질문하면 FastString 단원이 내 문제를 해결해주었습니다.FastString Delphi XE2 대안

이제 소프트웨어를 D7에서 XE2로 마이그레이션하기 시작했습니다. 내 질문은, FastString 더 이상 문제를 해결할 것으로 보인다 이후 나는 지금 어떤 대안이 있습니까?

... 또는 더 낙천적으로 Delphi가이 성능 문제를 해결합니까?

+1

미숙 한가? ;) - 실제로 문제가 있다고 판단 할 때까지 기다리십시오. 그런 다음 특정 문제로 다시 여기로 오면 사람들이 도움을 줄 수 있습니다. –

+0

안녕하세요. 좀 빠지는. 제가 언급 한 의문을 보시면이 문제가 있음을 알 수 있습니다. 마이그레이션 할 때 발생할 수있는 문제를 줄이기 위해 노력하고 있습니다. –

+0

지금은 (또는 FastString이 아닌 경우) 이해하고 있지만 요점은 XE2의 메트릭이 완전히 다를 수 있다는 것입니다. –

답변

5

최근 델파이에는 FastCode 루틴이 많이 포함되어있어 더 이상 타사 라이브러리가 필요하지 않을 수 있습니다.
재고 RTL/VCL로 시도한 다음 문제가 계속 발생하는지 확인하고 새로운 환경에서 문제를 해결하는 가장 좋은 해결책이 무엇인지 확인하십시오.

+1

정말 대답입니까? 어떤 해결책도 제공하지 않습니다. 대신 원래의 질문에 더 많은 의견을 제시하는 것 같습니다. –

+0

@KenWhite - 유효한 대답 +1이라고 생각합니다. François는해야 할 일을 말합니다 : 계속하기 전에 문제가 있는지 먼저 확인하십시오.나는 개인적으로 질문을 할 때 그것을 싫어하고 모든 사람들이 논평을한다. 나는 대답을 원해! – lkessler

+0

@lkessler : 나는 그것을 downvote하지 않았지만, 대답으로 자격이 있다고 생각하지 않습니다. :) –

2

Delphi의 뛰어난 문자열 성능 (FastString이 극단적 인 수준으로 올라 갔음)에 유니 코드가 미치는 영향에 대해 우려하면서 2009 년 출시 된 직후 a series of comparative benchmarking tests comparing Delphi 7, 2007, and 2009을 수행했으며 일부 테스트에서는 FastString 비교가 포함되었습니다.

RTL이 FastStrings에 대한 필요성을 무효로하는 몇 가지 중요한 개선 사항을 발견 했음에도 불구하고 (또는 Delphi 2009의 시점에서) 잠재적 인 "잡았다"가 잡기를 기다리고 있다는 결론이 내려졌습니다 델파이 2009+ 가든에서와 같이 모든 것이 순조롭게 진행된다고 간단하고 순조롭게 가정한다면 당신을 내보낼 수 있습니다.

궁극적으로 유니 코드의 오버 헤드는 2009+의 많은 이득을 얻습니다. FastString이 ANSI 문자열의 신뢰할 수있는 인공물에 특히 의존하여 FastStrings가 많은 노력을 기울일 수 있었던 것은 아닙니다. 유니 코드에는 적용되지 않음).

이후로이 테스트를 재검토하지는 않았으며, Delphi 2010, XE 및 XE2를 고려하여이 릴리스에서 추가 개선 사항이 있는지 확인하는 것이 좋습니다.

예제를 제공하기 위해 Smoketest 프레임 워크 (처음에는 테스트를 수행하는 데 사용됨)를 준비하고 나면이 작업을 수행 할 수 있습니다.